18. A computer system comprising: a processor; and a memory coupled to the processor and having stored therein instructions that, if executed by the computer system, cause the computer system to execute a method comprising: storing a plurality of symmetrical objects and a plurality of past selections, the plurality of symmetrical objects including a plurality of consumer objects and a plurality of inanimate objects, the plurality of symmetrical objects having attribute names that match, each attribute name having a value, each past selection including two or more symmetrical objects; determining a time range, a location, and a consumer object based on received consumer information, the consumer object being one of the plurality of symmetrical objects; identifying a plurality of filtered selections from the plurality of past selections, the plurality of filtered selections having been selected in the past during the time range and from the location, the plurality of filtered selections including a plurality of filtered objects, each filtered object being one of the plurality of symmetrical objects; determining a plurality of total differences for the plurality of filtered objects such that a total difference is determined for each filtered object, determining the plurality of total differences including: for each filtered object, determining a plurality of attribute differences such that an attribute difference is determined for each attribute name of a filtered object, each attribute difference being a difference between a value of an attribute name of the consumer object and a value of a corresponding attribute name of the filtered object; and summing the plurality of attribute differences to determine the total difference for the filtered object; and selecting the filtered object that has a smallest total difference to be a recommended object.
18. A computer system comprising: a processor; and a memory coupled to the processor and having stored therein instructions that, if executed by the computer system, cause the computer system to execute a method comprising: storing a plurality of symmetrical objects and a plurality of past selections, the plurality of symmetrical objects including a plurality of consumer objects and a plurality of inanimate objects, the plurality of symmetrical objects having attribute names that match, each attribute name having a value, each past selection including two or more symmetrical objects; determining a time range, a location, and a consumer object based on received consumer information, the consumer object being one of the plurality of symmetrical objects; identifying a plurality of filtered selections from the plurality of past selections, the plurality of filtered selections having been selected in the past during the time range and from the location, the plurality of filtered selections including a plurality of filtered objects, each filtered object being one of the plurality of symmetrical objects; determining a plurality of total differences for the plurality of filtered objects such that a total difference is determined for each filtered object, determining the plurality of total differences including: for each filtered object, determining a plurality of attribute differences such that an attribute difference is determined for each attribute name of a filtered object, each attribute difference being a difference between a value of an attribute name of the consumer object and a value of a corresponding attribute name of the filtered object; and summing the plurality of attribute differences to determine the total difference for the filtered object; and selecting the filtered object that has a smallest total difference to be a recommended object. 23. The computer system of claim 18 , wherein the method further comprises transmitting the recommended object to a consumer device associated with the consumer object, wherein the values of the attribute names of the consumer object and the values of the attribute names of the filtered object selected as the recommended object are modified if the recommended object is selected.