US 11,698,936 B2
System and methods for search engine parameter tuning using genetic algorithm
Jared Moore, Atlanta, GA (US); Rongkai Zhao, Kildeer, IL (US); Ravi Sambhu, Alpharetta, GA (US); and Naveen Krishna, Atlanta, GA (US)
Assigned to Home Depot Product Authority, LLC, Atlanta, GA (US)
Filed by Home Depot Product Authority, LLC, Atlanta, GA (US)
Filed on Oct. 9, 2017, as Appl. No. 15/727,917.
Prior Publication US 2019/0108279 A1, Apr. 11, 2019
Int. Cl. G06F 16/951 (2019.01); G06F 16/953 (2019.01); G06N 3/126 (2023.01)
CPC G06F 16/951 (2019.01) [G06F 16/953 (2019.01); G06N 3/126 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method for operating an electronic document search engine by setting respective weights of a plurality of search parameters in the search engine, the method comprising:
determining a multi-dimensional search parameter space comprising a set of possible weight values for each of the plurality of search parameters;
dividing the search parameter space into a grid of evenly-spaced values that is a subset of the set of possible values;
defining one or more initial populations of search parameter weight values, wherein each population of search parameter weight values comprises a plurality of initial individuals, wherein each initial individual comprises a set of search parameter weight values, each set comprising a respective one of the evenly-spaced values for each of the search parameters;
executing one or more genetic algorithms based on the one or more initial populations to select a final set of search parameter weight values, wherein executing one or more genetic algorithms based on the one or more initial populations comprises:
executing an evolution step, the evolution step comprising creating a plurality of children individuals, each child individual comprising new values for each of the search parameter weights, each child individual based on a respective first parent individual and second parent individual, wherein the new value for each one of the search parameter weights is selected from a range of values between a value of the respective first parent individual for that weight and a value of the respective second parent individual for that weight, wherein each parent individual is a respective one of the initial individuals; and
computing a fitness of each initial individual of the one or more initial populations based on historical selections by a plurality of users in response to previous searches, wherein computing a fitness of each initial individual comprises measuring how often the plurality of users selected one or more documents returned by the initial individual in each of a plurality of searches; and
returning results of a user search in the search engine according to the final set of search parameter weight values.