Computerized system and method for dynamically generating modified user interfaces

TWI943099BActive Publication Date: 2026-10-21COUPANG CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
TW112140899
Authority / Receiving Office
TW · TW
Patent Type
Patents
Current Assignee / Owner
Priority Date
2022-11-18
Filing Date
2023-10-25
Publication Date
2026-10-21
Estimated Expiration
2043-10-24

AI Technical Summary

Technical Problem

Existing online shopping platforms struggle with static and inefficient methods for recommending similar products, which can disrupt user searches and fail to capture consumer intent, leading to a suboptimal user experience and reduced sales.

Method used

A computerized system that dynamically generates a modified user interface by analyzing product attributes and social interaction signals to recommend similar products, integrating them seamlessly into the search results without interrupting the user's browsing process.

Benefits of technology

Enhances user experience by providing relevant product recommendations that align with consumer intent, improving engagement and increasing sales by facilitating easier product selection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure TWG2TB001916835_001
    Figure TWG2TB001916835_001
  • Figure TWG2TB001916835_002
    Figure TWG2TB001916835_002
  • Figure TWG2TB001916835_003
    Figure TWG2TB001916835_003
Patent Text Reader

Abstract

This invention discloses a computerized system and method for dynamically generating and modifying a user interface. The method includes: receiving a search request; providing a list of at least one product in response to the search request; receiving a selection of a first product from a user device; providing the first product to the user device for display on the user interface; determining the signal and weight of the first product; calculating scores for each of the second products based on the signal of the first product; sorting the second products according to the scores; and, in response to receiving a request to re-display the list of products, providing at least one second product to the user device for display together with the list of products based on the sorting.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to computerized systems and methods for presenting similar product recommendations in a dynamically generated and modified user interface for easy user selection. Specifically, embodiments of the present disclosure relate to an inventive and non-conventional system for discovering and identifying products similar to a given product and displaying the similar products in a dynamic user interface that is convenient for user review. Prior Art

[0002] Today's online shopping sites offer consumers a wide variety of products to choose from. For example, groups of similar products may come from different manufacturers, have different configurations in one of many variations, have different prices (including product sales price and shipping costs), or have different warranty periods. Consumers can search to locate products. However, in many cases, consumers do not have a specific product in mind and are willing to accept recommendations from other websites. Displaying similar products can increase the likelihood of a sale and improve the consumer experience.

[0003] Website recommendations can be added for display on product pages. The suggested products may share some similarities with the product being viewed. However, these recommendations are primarily static, considering only similarities in product characteristics. By implementing improved algorithms to identify and rank recommendations, there's a greater chance of capturing consumer intent or sparking interest, thereby increasing sales.

[0004] Furthermore, displaying recommendations on product pages can interrupt consumers' search processes. Clicking on a recommended product detracts from the ongoing search. Consumers may prefer to conduct a comprehensive comparison of products that appear in their own search. This can be challenging, especially for mobile user interfaces, due to limited screen space and limited options for navigation and information display. A more user-friendly interface that includes recommended products can improve the user experience and provide an improved interface for use on limited devices. In turn, this technological improvement can generate more sales by making it easier for consumers to select products that may be of greater interest.

[0005] Therefore, there is a need for improved methods and systems for discovering and displaying similar products in a more efficient and user-friendly manner to generate more sales and improve the user experience. Summary of the Invention

[0006] One aspect of the present disclosure is directed to a computerized system for dynamically generating a modified mobile user interface, the system comprising: at least one storage device comprising instructions; at least one processor configured to execute the instructions to perform the following steps: receiving a search request from a user device; providing a list of at least one product to a user interface on the user device in response to the search request; receiving a selection of a first product from the list of at least one product from the user device; providing the first product to the user device for display on the user interface; determining at least one signal for the first product and a weight for each of the at least one signal for the first product, wherein the at least one signal comprises a product attribute category signal and a social interaction category signal; determining at least one second product; calculating a score for each of the at least one second product based on the at least one signal for the first product; ranking the at least one second product by the score; and providing the at least one second product to the user device for display with the list of at least one product in response to receiving a request to redisplay the list of at least one product.

[0007] Another aspect of the present disclosure is directed to a method for dynamically generating a modified mobile user interface, comprising: receiving a search request from a user device; providing a list of at least one product to a user interface on the user device in response to the search request; receiving a selection of a first product from the list of at least one product from the user device; providing the first product to the user device for display on the user interface; determining at least one signal for the first product and a weight for each of at least one signal for the first product, wherein at least one signal includes a product attribute category signal and a social interaction category signal; determining at least one second product; calculating a score for each of the at least one second product based on the at least one signal for the first product; sorting the at least one second product by the score; and providing the at least one second product to the user device for display together with the list of at least one product in response to receiving a request to redisplay the list of at least one product.

[0008] Other systems, methods, and computer-readable media are also discussed herein. Simple diagram description

[0009] 1A is a schematic block diagram illustrating an exemplary embodiment of a network including a communicating computerized system for implementing shipping, transportation, and logistics operations, consistent with disclosed embodiments. FIG. 1B depicts a sample search result page (SRP) including one or more search results that satisfy a search request and interactive user interface elements, consistent with disclosed embodiments. FIG1C depicts a sample Single Detail Page (SDP) including a product and information about the product, as well as interactive user interface elements, consistent with disclosed embodiments. 1D depicts a sample shopping cart page including items in a virtual shopping cart and interactive user interface elements, consistent with disclosed embodiments. IE depicts a sample order page including items from a virtual shopping cart and information regarding purchase and shipping, as well as interactive user interface elements, consistent with disclosed embodiments. 2 is a diagrammatic illustration of an exemplary fulfillment center configured to utilize the disclosed computerized system, consistent with disclosed embodiments. 3 is a diagrammatic illustration of an exemplary process for responding to a user's search and subsequent selection of a product for viewing, consistent with disclosed embodiments. 4 is a diagrammatic illustration of an exemplary process for responding to a user request to return to previous search results, consistent with disclosed embodiments. FIG. 5 is a diagrammatic illustration of an exemplary composition of a product signal consistent with disclosed embodiments. FIG. 6 depicts a sample updated search results page (SRP) consistent with disclosed embodiments. Implementation Method

[0010] The following detailed description refers to the accompanying drawings. Whenever possible, the same reference numerals are used in the drawings and the following description to refer to the same or similar parts. Although several illustrative embodiments are described herein, modifications, adaptations, and other implementations are possible. For example, components and steps shown in the drawings may be substituted, added to, or modified, and the illustrative methods described herein may be modified by replacing, reordering, removing, or adding steps to the disclosed methods. Therefore, the following detailed description is not limited to the disclosed embodiments and examples. Rather, the proper scope of the present invention is defined by the appended claims.

[0011] Embodiments of the present disclosure are directed to systems and methods configured for discovering similar products, and more particularly, for discovering and identifying products similar to a given product and displaying the similar products in a user interface that is convenient for user review.

[0012] Referring to FIG1A , a schematic block diagram 100 is shown illustrating an exemplary embodiment of a system including a computerized system for implementing communications for shipping, transportation, and logistics operations. As shown in FIG1A , system 100 may include various systems, each of which may be connected to one another via one or more networks. The systems may also be connected to one another via direct connections (e.g., using cables). The depicted systems include a shipment authority technology (SAT) system 101, an external front-end system 103, an internal front-end system 105, a transportation system 107, mobile devices 107A, 107B, and 107C, a seller portal 109, a shipment and order tracking (SOT) system 111, a fulfillment optimization (FO) system 113, a fulfillment messaging gateway (FMG) 115, a supply chain management (SCM) system 117, a warehouse management system 119, mobile devices 119A, 119B, and 119C (depicted within a fulfillment center (FC) 200), third-party fulfillment systems 121A, 121B, and 121C, a fulfillment center authorization system (FC Auth) 123, and a labor management system (LMS) 125.

[0013] In some embodiments, the SAT system 101 may be implemented as a computer system that monitors order status and delivery status. For example, the SAT system 101 may determine whether an order has exceeded its promised delivery date (PDD) and may take appropriate action, including placing a new order, reshipping items in an undelivered order, canceling an undelivered order, initiating contact with the ordering customer, or the like. The SAT system 101 may also monitor other data, including outputs (such as the number of packages shipped during a specific time period) and inputs (such as the number of empty cartons received for delivery). The SAT system 101 may also act as a gateway between different devices in the system 100, enabling communication between devices such as the external front-end system 103 and the FO system 113 (e.g., using store-and-forward or other techniques).

[0014] In some embodiments, external front-end system 103 may be implemented as a computer system that enables external users to interact with one or more systems in system 100. For example, in an embodiment where system 100 enables system presentation to allow users to place orders for items, external front-end system 103 may be implemented as a web server that receives search requests, presents item pages, and requests payment information. For example, external front-end system 103 may be implemented as a computer or a computer running software such as Apache HTTP Server, Microsoft Internet Information Services (IIS), NGINX, or the like. In other embodiments, external front-end system 103 may run customized web server software designed to receive and process requests from external devices (e.g., mobile device 102A or computer 102B), retrieve information from databases and other data repositories based on these requests, and provide responses to the received requests based on the retrieved information.

[0015] In some embodiments, the external front-end system 103 may include one or more of a web caching system, a database, a search system, or a payment system. In one embodiment, the external front-end system 103 may include one or more of these systems, while in another embodiment, the external front-end system 103 may include an interface (e.g., server-to-server, database-to-database, or other network connection) connected to one or more of these systems.

[0016] The exemplary set of steps illustrated in Figures 1B, 1C, 1D, and 1E will help describe some operations of the external front-end system 103. The external front-end system 103 may receive information from systems or devices in system 100 for presentation and / or display. For example, the external front-end system 103 may host or provide one or more web pages, including a search results page (SRP) (e.g., Figure 1B), a single detail page (SDP) (e.g., Figure 1C), a shopping cart page (e.g., Figure 1D), or an order page (e.g., Figure 1E). A user device (e.g., using mobile device 102A or computer 102B) may navigate to the external front-end system 103 and request a search by entering information into a search box. The external front-end system 103 may request information from one or more systems in system 100. For example, the external front-end system 103 may request information that satisfies the search request from the FO system 113. The external front-end system 103 can also request and receive (from the FO system 113) a promised delivery date, or "PDD," for each product included in the search results. In some embodiments, the PDD may represent an estimate of when a package containing the product will arrive at the user's desired location, or the date the product will be promised for delivery to the user's desired location, if ordered within a specific time period (e.g., by the end of the day (11:59 p.m.)). (PDDs are discussed further below with respect to the FO system 113.)

[0017] Based on the information, the external front-end system 103 can prepare an SRP (e.g., FIG. 1B ). The SRP can include information that satisfies the search request. For example, it can include images of products that satisfy the search request. The SRP can also include individual prices for each product, or information related to enhanced delivery options, PDD, weight, size, price quotes, discounts, or the like for each product. The external front-end system 103 can send the SRP to the requesting user device (e.g., via a network).

[0018] The user device can then select a product from the SRP, for example by clicking or tapping on the user interface or using another input device, to select a product represented on the SRP. The user device can formulate a request for information about the selected product and send it to the external front-end system 103. In response, the external front-end system 103 can request information related to the selected product. For example, the information can include additional information beyond that presented for the product on the respective SRP. This can include, for example, expiration date, country of origin, weight, size, number of items in the package, handling instructions, or other information about the product. The information can also include recommendations for similar products (based on, for example, big data and / or machine learning analysis of customers who have purchased the product and at least one other product), answers to frequently asked questions, customer reviews, manufacturer information, images, and the like.

[0019] The external front-end system 103 can prepare an SDP (Single Detail Page) (e.g., FIG. 1C ) based on the received product information. The SDP can also include other interactive elements, such as a "Buy Now" button, an "Add to Cart" button, a quantity field, an image of the item, or the like. The SDP can further include a list of sellers offering the product. The detail list can be sorted based on the price offered by each seller, so that the seller offering the product at the lowest price is listed at the top. The list can also be sorted based on seller rankings, so that the highest-ranked seller is listed at the top. The seller ranking can be developed based on multiple factors, including, for example, the seller's past track record of meeting the promised PDD. The external front-end system 103 can deliver the SDP to the requesting user device (e.g., via a network).

[0020] The requesting user device may receive an SDP listing product information. After receiving the SDP, the user device may then interact with the SDP. For example, a user of the requesting user device may click or otherwise interact with an "Add to Cart" button on the SDP. This adds the product to the user's associated shopping cart. The user device may transmit this request to add the product to the shopping cart to the external front-end system 103.

[0021] The external front-end system 103 may generate a shopping cart page (e.g., FIG. 1D ). In some embodiments, the shopping cart page lists the products that the user has added to a virtual "shopping cart." A user device may request the shopping cart page by clicking or otherwise interacting with an icon on the SRP, SDP, or other page. In some embodiments, the shopping cart page may list all products that the user has added to the shopping cart, as well as information about the products in the shopping cart (such as the quantity of each product, the price per item of each product, the price of each product based on the associated quantity), information about the PDD, the delivery method, shipping costs, a user interface element for modifying products in the shopping cart (e.g., deleting or modifying the quantity), options for ordering additional products or setting up recurring deliveries of products, options for setting up interest payments, a user interface element for proceeding to purchase, or the like. A user at the user device may click or otherwise interact with a user interface element (e.g., a button labeled "Buy Now") to initiate a purchase of the products in the shopping cart. Upon doing so, the user device may transmit this request to initiate the purchase to the external front-end system 103.

[0022] In response to receiving a request to initiate a purchase, the external front-end system 103 may generate an order page (e.g., FIG. 1E ). In some embodiments, the order page re-lists the items from the shopping cart and requests payment and shipping information. For example, the order page may include a portion requesting information about the purchaser of the items in the shopping cart (e.g., name, address, email address, phone number), information about the recipient (e.g., name, address, phone number, delivery information), shipping information (e.g., speed / method of delivery and / or pickup), payment information (e.g., credit card, bank transfer, check, stored points), a user interface element requesting a cash receipt (e.g., for tax purposes), or the like. The external front-end system 103 may send the order page to the user device.

[0023] The user device may enter information on the order page and click or otherwise interact with user interface elements that send information to the external front-end system 103. From there, the external front-end system 103 may send information to various systems in the system 100 to enable the creation and processing of a new order with the products in the shopping cart.

[0024] In some embodiments, the external front-end system 103 may be further configured to enable the seller to transmit and receive order-related information.

[0025] In some embodiments, the internal front-end system 105 may be implemented as a computer system that enables internal users (e.g., employees of the organization that owns, operates, or leases the system 100) to interact with one or more systems in the system 100. For example, in embodiments where the system 100 enables a presentation of the system to allow users to place orders for items, the internal front-end system 105 may be implemented as a web server that enables internal users to view diagnostic and statistical information about orders, modify item information, or review order-related statistics. For example, the internal front-end system 105 may be implemented as a computer or a computer running software such as Apache HTTP Server, Microsoft Internet Information Services (IIS), NGINX, or the like. In other embodiments, the internal front-end system 105 may run customized web server software designed to receive and process requests from the systems or devices depicted in the system 100 (as well as other devices not depicted), retrieve information from databases and other data repositories based on those requests, and provide responses to the received requests based on the retrieved information.

[0026] In some embodiments, the internal front-end system 105 may include one or more of a web caching system, a database, a search system, a payment system, an analytics system, an order monitoring system, or the like. In one aspect, the internal front-end system 105 may include one or more of these systems, while in another aspect, the internal front-end system 105 may include an interface (e.g., server-to-server, database-to-database, or other network connection) connected to one or more of these systems.

[0027] In some embodiments, delivery system 107 may be implemented as a computer system that facilitates communication between systems or devices in system 100 and mobile devices 107A through 107C. In some embodiments, delivery system 107 may receive information from one or more mobile devices 107A through 107C (e.g., mobile phones, smartphones, PDAs, or the like). For example, in some embodiments, mobile devices 107A through 107C may be devices operated by delivery workers. Delivery workers (who may be permanent, temporary, or shift workers) may utilize mobile devices 107A through 107C to facilitate the delivery of packages containing products ordered by users. For example, to deliver a package, the delivery worker may receive a notification on their mobile device indicating which package to deliver and where to deliver it. Upon arrival at the delivery location, the delivery worker may locate the package (e.g., in the back of a truck or in the package's crate), scan or otherwise capture data associated with an identifier on the package (e.g., a barcode, image, text string, RFID tag, or the like) using a mobile device, and deliver the package (e.g., by leaving it at the front door, leaving it with a security guard, handing it to the recipient, or the like). In some embodiments, the delivery worker may use the mobile device to capture a photo of the package and / or obtain a signature. The mobile device may send information to the transportation system 107, including information about the delivery, such as the time, date, GPS location, photo, identifier associated with the delivery worker, identifier associated with the mobile device, or the like. The transportation system 107 may store this information in a database (not depicted) for access by other systems in the system 100. In some embodiments, the transportation system 107 may use this information to prepare tracking data and send this tracking data to other systems, indicating the location of a particular package.

[0028] In some embodiments, certain users may use one type of mobile device (e.g., a permanent worker may use a dedicated PDA with customized hardware such as a barcode scanner, stylus, and other devices) while other users may use other types of mobile devices (e.g., temporary or shift workers may utilize off-the-shelf cell phones and / or smartphones).

[0029] In some embodiments, the transportation system 107 may associate a user with each device. For example, the transportation system 107 may store an association between a user (represented by, for example, a user identifier, employee identifier, or phone number) and a mobile device (represented by, for example, an International Mobile Equipment Identity (IMEI), an International Mobile Subscription Identifier (IMSI), a phone number, a Universal Unique Identifier (UUID), or a Globally Unique Identifier (GUID)). The transportation system 107 may use this association in conjunction with data received during delivery to analyze data stored in a database to determine, among other things, the location of a worker, the worker's efficiency, or the worker's speed.

[0030] In some embodiments, seller portal 109 may be implemented as a computer system that enables sellers or other external entities to communicate electronically with one or more systems in system 100. For example, a seller may utilize a computer system (not depicted) to upload or provide product information, order information, contact information, or the like for products that the seller wishes to sell via system 100 using seller portal 109.

[0031] In some embodiments, the shipping and order tracking system 111 may be implemented as a computer system that receives, stores, and transmits information regarding the location of packages containing products ordered by customers (e.g., by users using device 102A to device 102B). In some embodiments, the shipping and order tracking system 111 may request or store information from a web server (not depicted) operated by a shipping company that delivers packages containing products ordered by customers.

[0032] In some embodiments, shipping and order tracking system 111 can request and store information from the systems depicted in system 100. For example, shipping and order tracking system 111 can request information from transportation system 107. As discussed above, transportation system 107 can receive information from one or more mobile devices 107A to 107C (e.g., cell phones, smartphones, PDAs, or the like) associated with one or more of a user (e.g., a delivery worker) or a vehicle (e.g., a delivery truck). In some embodiments, shipping and order tracking system 111 can also request information from a warehouse management system (WMS) 119 to determine the location of individual products within a fulfillment center (e.g., fulfillment center 200). Shipping and order tracking system 111 can request information from one or more of transportation system 107 or WMS 119, process the data after the request, and present the data to a device (e.g., user device 102A and user device 102B).

[0033] In some embodiments, fulfillment optimization (FO) system 113 may be implemented as a computer system that stores information about customer orders from other systems (e.g., external front-end system 103 and / or shipping and order tracking system 111). FO system 113 may also store information describing where specific items are stored or held. For example, some items may be stored only in one fulfillment center, while others may be stored in multiple fulfillment centers. In still other embodiments, certain fulfillment centers may be designed to store only a specific set of items (e.g., fresh produce or frozen products). FO system 113 stores this information, along with related information (e.g., quantity, size, receipt date, expiration date, etc.).

[0034] The FO system 113 may also calculate a corresponding PDD (Promised Delivery Date) for each product. In some embodiments, the PDD may be based on one or more factors. For example, the FO system 113 may calculate the PDD for a product based on past demand for the product (e.g., how many times the product was ordered during a period of time), projected demand for the product (e.g., how many customers are predicted to order the product during an upcoming period of time), past network-wide demand indicating how many products were ordered during a period of time, projected network-wide demand indicating how many products are expected to be ordered during an upcoming period of time, one or more counts of products stored in each fulfillment center 200, which fulfillment center stores each product, projected or current orders for the product, or the like.

[0035] In some embodiments, the FO system 113 may determine the PDD for each product periodically (e.g., hourly) and store it in a database for retrieval or send it to other systems (e.g., the external front-end system 103, the SAT system 101, the shipping and order tracking system 111). In other embodiments, the FO system 113 may receive electronic requests from one or more systems (e.g., the external front-end system 103, the SAT system 101, the shipping and order tracking system 111) and calculate the PDD on demand.

[0036] In some embodiments, fulfillment gateway (FMG) 115 may be implemented as a computer system that receives requests or responses in one format or protocol from one or more systems in system 100 (such as FO system 113), converts the requests or responses into another format or protocol, and forwards the requests or responses in the converted format or protocol to other systems (such as WMS 119 or third-party fulfillment system 121A, third-party fulfillment system 121B, or third-party fulfillment system 121C), and vice versa.

[0037] In some embodiments, supply chain management (SCM) system 117 may be implemented as a computer system that performs forecasting functions. For example, SCM system 117 may forecast demand levels for specific products based on, for example, past demand for the product, projected demand for the product, past network-wide demand, projected network-wide demand, the number of products stored in each fulfillment center 200, projected or current orders for each product, or the like. In response to this forecast level and the volume of each product across all fulfillment centers, SCM system 117 may generate one or more purchase orders to purchase and reserve sufficient quantities to meet the forecasted demand for the specific product.

[0038] In some embodiments, warehouse management system (WMS) 119 may be implemented as a computer system that monitors workflow. For example, WMS 119 may receive event data indicating discrete events from individual devices (e.g., devices 107A through 107C or devices 119A through 119C). For example, WMS 119 may receive event data indicating the use of one of these devices to scan a package. As discussed below with respect to fulfillment center 200 and FIG. 2 , during the fulfillment process, a package identifier (e.g., a barcode or RFID tag data) may be scanned or read by a machine at a particular stage (e.g., an automated or handheld barcode scanner, an RFID reader, a high-speed camera, a device such as tablet 119A, a mobile device / PDA 119B, a computer 119C, or the like). The WMS 119 may store each event indicating a scan or reading of a package identifier, along with the package identifier, time, date, location, user identifier, or other information, in a corresponding database (not depicted) and may provide this information to other systems (e.g., the shipping and order tracking system 111).

[0039] In some embodiments, the WMS 119 may store information associating one or more devices (e.g., devices 107A-107C or devices 119A-119C) with one or more users associated with the system 100. For example, in some cases, a user (such as a part-time employee or a full-time employee) may be associated with a mobile device because the user owns the mobile device (e.g., the mobile device is a smartphone). In other cases, a user may be associated with a mobile device because the user temporarily keeps the mobile device (e.g., the user picks up the mobile device at the beginning of the day, uses the mobile device during the day, and returns the mobile device at the end of the day).

[0040] In some embodiments, WMS 119 may maintain a work log for each user associated with system 100. For example, WMS 119 may store information associated with each employee, including any specified process (e.g., unloading from a truck, picking items from a picking area, rebin wall work, packaging items), user identifier, location (e.g., floor or area within fulfillment center 200), number of units moved through the system by the employee (e.g., number of items picked, number of items packaged), identifiers associated with devices (e.g., devices 119A-119C), or the like. In some embodiments, WMS 119 may receive check-in and check-out information from a timekeeping system, such as the timekeeping system operating on devices 119A-119C.

[0041] In some embodiments, third-party fulfillment (3PL) systems 121A-121C represent computer systems associated with third-party providers of logistics and products. For example, while some products are stored in fulfillment center 200 (as discussed below with respect to FIG. 2 ), other products may be stored off-site, produced on demand, or otherwise unavailable for storage in fulfillment center 200. 3PL systems 121A-121C can be configured to receive orders from FO system 113 (e.g., via FMG 115) and can provide products and / or services (e.g., delivery or installation) directly to customers. In some embodiments, one or more of 3PL systems 121A-121C may be part of system 100, while in other embodiments, one or more of 3PL systems 121A-121C may be external to system 100 (e.g., owned or operated by a third-party provider).

[0042] In some embodiments, fulfillment center Auth system (FC Auth) 123 can be implemented as a computer system with various functions. For example, in some embodiments, FC Auth 123 can serve as a single-sign-on (SSO) service for one or more other systems in system 100. For example, FC Auth 123 can enable a user to log in via internal front-end system 105, determine that the user has similar privileges to access resources in shipping and order tracking system 111, and enable the user to obtain those privileges without requiring a second login process. In other embodiments, FC Auth 123 can enable users (e.g., employees) to associate themselves with specific tasks. For example, some employees may not have electronic devices (such as devices 119A through 119C) and may actually move from task to task and from zone to zone within fulfillment center 200 throughout the course of a day. FC Auth 123 can be configured to enable these employees to indicate what task they are working on and what zone they are in at different times of the day.

[0043] In some embodiments, the labor management system (LMS) 125 may be implemented as a computer system that stores attendance and timeout information for employees (including full-time and part-time employees). For example, the LMS 125 may receive information from the FC Auth 123, the WMS 119, devices 119A to 119C, the transportation system 107, and / or devices 107A to 107C.

[0044] The specific configuration depicted in FIG1A is merely an example. For example, while FIG1A depicts FC Auth system 123 connected to FO system 113, not all embodiments require this specific configuration. In fact, in some embodiments, the systems in system 100 may be connected to each other via one or more public or private networks, including the Internet, an intranet, a wide-area network (WAN), a metropolitan-area network (MAN), a wireless network compliant with IEEE 802.11a / b / g / n standards, leased lines, or the like. In some embodiments, one or more of the systems in system 100 may be implemented as one or more virtual servers implemented in a data center, server farm, or the like.

[0045] FIG2 depicts a fulfillment center 200. Fulfillment center 200 is an example of a physical location where items are stored for shipment to customers upon order. Fulfillment center (FC) 200 can be divided into multiple zones, each of which is depicted in FIG2 . In some embodiments, these "zones" can be considered to be virtual divisions between different stages of the process of receiving, storing, retrieving, and shipping items. Therefore, while "zones" are depicted in FIG2 , other zone divisions are possible, and in some embodiments, the zones in FIG2 may be omitted, duplicated, or modified.

[0046] Inbound area 203 represents the area of ​​FC 200 where items are received from sellers who wish to sell products using system 100 from FIG. 1A . For example, a seller may use truck 201 to deliver item 202A and item 202B. Item 202A may represent a single item large enough to occupy its own shipping pallet, while item 202B may represent a collection of items stacked together on the same pallet to save space.

[0047] Workers will receive items in inbound area 203 and may use a computer system (not depicted) to optionally inspect the items for damage and correctness. For example, workers may use the computer system to compare the quantities of items 202A and 202B with the ordered quantities of the items. If the quantities do not match, the worker may reject one or more of item 202A or 202B. If the quantities do match, the worker may move the items to buffer zone 205 (using, for example, a dolly, hand truck, forklift, or manually). Buffer zone 205 may be a temporary storage area for items that are not currently needed in the picking area (e.g., because there are a sufficiently high number of items in the picking area to meet forecasted demand). In some embodiments, a forklift 206 operates to move items around buffer zone 205 and between inbound area 203 and unloading area 207. If item 202A or item 202B in the picking area is needed (eg, due to predicted demand), a forklift may move item 202A or item 202B to the unloading area 207 .

[0048] Unloading zone 207 may be an area of ​​FC 200 where objects are stored before being moved to picking zone 209. A worker assigned to a picking task (a "picker") may approach objects 202A and 202B in the picking zone and use a mobile device (e.g., device 119B) to scan the barcode of the picking zone and the barcodes associated with objects 202A and 202B. The picker may then take the objects to picking zone 209 (e.g., by placing them on a cart or carrying them).

[0049] Picking area 209 may be the area of ​​FC 200 where objects 208 are stored on storage units 210. In some embodiments, storage units 210 may include one or more physical shelves, bookshelves, boxes, totes, refrigerators, freezers, cold storage areas, or the like. In some embodiments, picking area 209 may be organized into multiple floors. In some embodiments, workers or machines may move objects to picking area 209 in a variety of ways, including, for example, using forklifts, elevators, conveyor belts, carts, hand trucks, trolleys, automated robots or devices, or manually. For example, a picker may place objects 202A and 202B on a hand truck or cart in unloading area 207 and walk objects 202A and 202B to picking area 209.

[0050] A picker may receive instructions to place (or "stack") an item at a specific point in picking area 209 (such as a specific space on storage unit 210). For example, the picker may use a mobile device (e.g., device 119B) to scan item 202A. The device may, for example, use a system indicating aisles, shelves, and locations to indicate where the picker should stack item 202A. The device may then prompt the picker to scan a barcode at that location before stacking item 202A there. The device may then send data (e.g., via a wireless network) to a computer system, such as WMS 119 in FIG. 1A , indicating that item 202A has been stacked at that location by a user using device 119B.

[0051] Once a user places an order, a picker receives instructions on device 119B to retrieve one or more items 208 from storage unit 210. The picker retrieves the items 208, scans the barcodes on the items 208, and places the items 208 on a transport mechanism 214. Although transport mechanism 214 is shown as a slide, in some embodiments, the transport mechanism may be implemented as one or more of a conveyor belt, an elevator, a cart, a forklift, a hand truck, a dolly, or the like. The items 208 may then arrive at a packaging area 211.

[0052] The packing area 211 may be the area of ​​the FC 200 where items are received from the picking area 209 and packaged into boxes or bags for eventual shipment to customers. In the packing area 211, a worker assigned to receive items (a "merge worker") receives items 208 from the picking area 209 and determines which order the item 208 corresponds to. For example, the merge worker may use a device such as computer 119C to scan a barcode on the item 208. Computer 119C may visually indicate which order the item 208 is associated with. This may include, for example, a space or "cell" on the wall 216 corresponding to the order. Once an order is complete (e.g., because the cell contains all items for the order), the merge worker may indicate to the packing worker (or "packer") that the order is complete. The packer may retrieve the items from the cell and place them into a box or bag for shipment. The packer may then send the boxes or packages to a hub zone 213, such as via a forklift, cart, dolly, hand truck, conveyor belt, manually, or otherwise.

[0053] Hub area 213 may be the area of ​​FC 200 that receives all boxes or packages ("parcels") from packaging area 211. Workers and / or machines in hub area 213 may retrieve parcels 218 and determine which part of the delivery area each parcel is destined for, and deliver the parcel to the appropriate camp zone 215. For example, if the delivery area has two smaller sub-areas, the parcel will go to one of the two camp zones 215. In some embodiments, workers or machines may scan the parcel (e.g., using one of devices 119A through 119C) to determine its final destination. Delivering the parcel to a camp zone 215 may include, for example, determining (e.g., based on a ZIP code) the part of the geographic area to which the parcel is destined, and determining the camp zone 215 associated with that part of the geographic area.

[0054] In some embodiments, camp area 215 may include one or more buildings, one or more physical spaces, or one or more areas where packages are received from hub area 213 for sorting into routes and / or sub-routes. In some embodiments, camp area 215 is physically separate from FC 200, while in other embodiments, camp area 215 may form part of FC 200.

[0055] Workers and / or machines in camp area 215 may determine which route and / or sub-route a package 220 should be associated with based on, for example, a comparison of the destination with existing routes and / or sub-routes, a calculation of the workload for each route and / or sub-route, the time of day, the delivery method, the cost of delivering the package 220, the PDD associated with the items in the package 220, or the like. In some embodiments, a worker or machine may scan the package (e.g., using one of devices 119A-119C) to determine its final destination. Once a package 220 is assigned to a particular route and / or sub-route, the worker and / or machine may move the package 220 for delivery. In exemplary FIG. 2 , camp area 215 includes a truck 222, a car 226, and delivery workers 224A and 224B. In some embodiments, truck 222 may be driven by delivery worker 224A, a full-time employee delivering packages for FC 200, and truck 222 may be owned, rented, or operated by the same company that owns, rents, or operates FC 200. In some embodiments, car 226 may be driven by delivery worker 224B, a "flexible" or temporary worker who delivers on an as-needed basis (e.g., seasonally). Car 226 may be owned, rented, or operated by delivery worker 224B.

[0056] FIG. 3 is a diagrammatic illustration of an exemplary process 300 for responding to a user's search and subsequent selection of a product for viewing, consistent with disclosed embodiments.

[0057] In some embodiments, in step 310, a user may provide a search term on a user device (e.g., mobile device 102A or computer 102B) via a user interface. In some embodiments, the user device (e.g., using mobile device 102A or computer 102B) may navigate to the external front-end system 103 and request a search by entering information into a search box. The user may provide the search term via keyboard input or by clicking / selecting it using a pointing device (e.g., a touchscreen selection, a stylus, a mouse, etc.). The external front-end system 103 (e.g., a web server) may receive the search request (e.g., via a network), perform the search, and prepare an SRP, as previously disclosed. In some embodiments, the generated SRP may be stored in a database on the external front-end system 103 and may be further transmitted to other subsystems of the system 100. In some embodiments, the generated SRP may be stored in cache (e.g., on the external front-end system 103 or user device) to allow for faster re-launching and redisplay.

[0058] In step 320, the external front-end system 103 may receive the search terms from the user device and perform a search in the product database. The external front-end system 103 may request information from one or more systems in system 100. The external front-end system 103 may then prepare an SRP (e.g., FIG. 1B ) based on the information. The SRP may include information that satisfies the search request. For example, this may include images of products that satisfy the search request. The SRP may also include individual prices for each product, or information related to enhanced delivery options, PDDs, weights, sizes, quotes, discounts, or the like for each product. The external front-end system 103 may send the SRP to the requesting user device (e.g., via a network). The product database may be part of the external front-end system 103, the internal front-end system 105, or another subsystem of system 100.

[0059] In step 330, the search results may be obtained or received by the external front-end system 103. In some embodiments, the external front-end system 103 may determine how the search results should be presented, such as the order in which the products in the search results should be displayed. In some embodiments, the external front-end system 103 may analyze the search results and determine the relevance of each product in the search results to the user's intent. In some embodiments, the external front-end system 103 may determine relevance based on previous search history; for example, previously searched products may indicate a high relevance to the current search. Additionally or alternatively, the external front-end system 103 may determine relevance based on pre-defined criteria for certain categories of products, as some characteristics may exist for different products, but their relevance may vary significantly. For example, screen size and CPU speed may be considered more relevant than color in a search for laptops, while color may be considered more relevant than size in a search for clothing.

[0060] In step 340, the external front-end system 103 may prepare (e.g., generate or regenerate) a search results page (SRP) based on the search results and the determination of relevance, for example, as discussed above with respect to FIG. 1B . The SRP may include information that satisfies the search request in step 310 . For example, it may include images and / or links to products that satisfy the search request. The external front-end system 103 may send the SRP to the requesting user device (e.g., via a network).

[0061] In step 350 , the requesting user device may display the SRP in a user interface (eg, FIG. 1B ).

[0062] The user may then select a product from the SRP via the user device, such as by clicking or tapping the user interface or using another input device, as in step 360. The user device may formulate a request for information about the selected product (e.g., via a link) and send it to the external front-end system 103.

[0063] In response to the selection in step 360, the external front-end system 103 may request or retrieve information related to the selected product in step 370. For example, the information may include additional information beyond that presented for the product on the respective SRP. This may include, for example, expiration date, country of origin, weight, size, number of items in the package, handling instructions, or other information about the product.

[0064] In some embodiments, the external front-end system 103 may use product information to recommend similar products. In some embodiments, product information may include, for example, product price, product category, and product features. In some embodiments, a product may belong to multiple related or unrelated categories. For example, paper towels may belong to both kitchen products and paper products. In some embodiments, product information may include any detailed information about the product. For example, clothing may include information about color, material, size, style, brand, special features (e.g., braiding), washing instructions, and so on.

[0065] In step 380, the external front-end system 103 may prepare an SDP (single detail page) based on the received product information, for example, as discussed above with respect to FIG 1C. The external front-end system 103 may deliver the SDP to the requesting user device (eg, via a network).

[0066] In step 390, the requesting user device may receive and then display the SDP listing the product information. After receiving the SDP, the user may then interact with the SDP via the user device, as discussed in the previous section. For example, the user of the requesting user device may click or otherwise interact with an "Add to Cart" button on the SDP. This adds the product to the user's associated shopping cart. The user device may transmit this request to add the product to the shopping cart to the external front-end system 103. The user may click or otherwise interact with a "Back" button on the SDP. The user device may transmit this request to return to the SRP on the user interface. The external front-end system 103 may process this request to return to the previous search results.

[0067] 4 is a diagrammatic illustration of an exemplary process 400 for responding to a user request to return to previous search results consistent with the disclosed embodiments. In some embodiments, the exemplary process may also respond to a user request to perform a repeated search.

[0068] In some embodiments, the external front-end system 103 may begin identifying similar products after the user requests to return to the SRP. However, in some embodiments, the external front-end system 103 may begin identifying similar products when the SDP is displayed on the user interface after the product is selected in step 360. Advantageously, in these embodiments, the external front-end system 103 can use the similar product suggestions to prepare an updated SRP because the user has specifically requested the SRP again.

[0069] In step 410, the external front-end system 103 may determine at least one signal of the first product and a weight for each of the signals of the selected product based on the selected product. In some embodiments, the signal is a pre-set indicator for the external front-end system 103 to search for and determine similar products. In some embodiments, the signal may be assigned by the seller or authorized personnel, or generated by the external front-end system 103.

[0070] In some embodiments, the signals are product-specific. Each signal is assigned a weight. The signal weight indicates its importance in searching for and determining similar products. In some embodiments, at least one signal and the weight of each signal are stored in a database in the external front-end system 103.

[0071] In some embodiments, different products may have different signals with different weights. Weight assignments may be based on preset criteria or adjusted by internal front-end system 105. In some embodiments, weights may be automatically and repeatedly adjusted based on machine learning algorithms. In other words, by factoring current user behavior into future weighting decisions, current user behavior may in turn influence future calculations. For example, if a user adds a search term for screen size after their initial search term for "laptop," the weight of screen size as a signal may increase. External front-end system 103 may assign an increased weight to the signal "screen size" in response to future searches for "laptop." This weight adjustment may apply to this specific user or any other user who may be conducting similar searches.

[0072] In some embodiments, signals may belong to two categories. As shown in FIG5 , signal 500 may be a product feature related signal 510 or a social interaction related signal 550 .

[0073] In some embodiments, product characteristic-related signals 510 may be similar to the product information discussed in the previous section, including price 520, product category 530, or any other product characteristics 540. In some embodiments, a product may belong to multiple related or unrelated categories. For example, paper towels may belong to both kitchen products and paper products. In some embodiments, product information may include any detailed information about the product. For example, clothing may have information about color, material, size, style, brand, special features (e.g., braiding), washing instructions, and so on.

[0074] In some embodiments, the product price 520 used as a signal can be normalized for weighting purposes. The price distribution of products in the same category can be used to determine pricing similarity compared to a target price (e.g., the listed price of the target product). For example, regardless of the absolute value of the price, a product A priced approximately one standard deviation away from the price of its target product B will receive the same score as a product C priced approximately one standard deviation away from the price of its target product D.

[0075] In some embodiments, products may belong to different categories with different weights. Generally speaking, smaller categories may indicate higher similarity and therefore may have higher weights. In some embodiments, if category A is a subset of category B, either category A or category B may be considered, but not both.

[0076] In some embodiments, each of the product characteristics 540 used as signals can be assigned a weight, similar to the relevance of product information discussed above. In some embodiments, not all characteristics are considered. For example, clothing can be characterized as both cotton and 100% cotton. Depending on the search term and search history, more specific or less specific terms may be discarded from consideration. For example, a search term specifying "single malt" may cause the system to discard the characteristic "whisky" because "single malt" is more specific than "whisky," and all "single malts" are "whisky." However, the external front-end system 103 may determine, based on search history (for example, the user may have searched for whiskies from Scotland, Japan, and the United States in the same session; the system may determine that the user does not have a strong preference for whisky origin as a characteristic), that the more specific term (e.g., Scotch whisky) does not reflect the user's true intent and therefore discard the more specific term (e.g., Scotch whisky).

[0077] In some embodiments, some signals 500 (e.g., characteristics 540) may be discarded by being assigned a zero weight. In some embodiments, discarding a characteristic may mean that the external front-end system 103 assigns zero importance / weight to the characteristic, effectively removing the characteristic from subsequent calculations or ignoring products selected by considering the characteristic.

[0078] In some embodiments, social signals 550 may include historical data. For example, the number of instances of two products viewed during the same session, or a "connection" (e.g., "click" 560) between two products. In some embodiments, the direction of this product connection (e.g., which product was viewed first during the session) may or may not be significant. In some embodiments, a connection may include data related to views from all users.

[0079] In some embodiments, social signals 550 may include historical data on the number of instances of two products being referenced in the same review, with or without preference, e.g., in direct comparison, as in “mentions” 570. This may be an indicator of some similarity between the two products.

[0080] In some embodiments, social interaction signal 550 can be customized for the user, particularly when a particular user has identified themselves via cookies or login. In some embodiments, user 580's browsing and / or search history can be used to identify additional social interaction signals. For example, products searched for within a specific number of days may indicate a suitable level of interest for the user and therefore be considered social interaction signal 550. In some embodiments, external front-end system 103 may consider the time elapsed between a previous search / view and the current session to estimate interest and assign weights accordingly. Generally speaking, the more frequently a user views / searches for a particular item, the higher their level of interest. For example, a user's viewing history of viewing product A for less than five seconds but product B for more than five minutes may indicate a higher level of interest in product B than in product A; repeated searches and views of product C by a user may indicate a higher level of interest in product D, where the individual searches and views occurred more than a week ago. In some embodiments, viewing / search history 580 may include those conducted on third-party websites / applications.

[0081] Returning to Figure 4 , in step 420, the external front-end system 103 may preliminarily identify at least one similar product for recommendation. In some embodiments, this determination may have a lower relevance criterion to capture a wider range of items. For example, if a product contains one or more signals of a product currently displayed on the SDP, that product may be pre-selected. In some embodiments, this determination may focus on certain aspects of the signals determined in step 410. For example, only certain signals above a certain threshold weight may be used to preliminarily identify similar products, or a product may be selected only when at least a certain number of signals are detected.

[0082] In step 430, a score may be calculated for each of the initially selected similar products based on the signals and weights determined in step 410. In some embodiments, the scores are normalized to allow for direct comparison. For example, the scores may be normalized to a scale of 0 to 1, or 0 to 100.

[0083] In step 440, the external front-end system 103 may sort the initially selected similar products based on their scores. A high score may indicate a higher likelihood of user interest. In some embodiments, additional signals may be added to the calculation as tie breakers as needed. In other embodiments, the external front-end system 103 may break the link by random selection, round-robin selection, alphabetical selection, or other methods.

[0084] In step 450, the external front-end system 103 may determine to include at least one of the highest-ranked products from step 440 in the candidate list. The external front-end system 103 may determine the number of products to include based on the user interface capacity. In some embodiments, the external front-end system 103 may include more products in the candidate list than can be displayed at one time. Excessive listing of products may be used to accommodate changes in the user interface or to serve as replacements. For example, when the user device is a smartphone and the user changes the smartphone's orientation from portrait to landscape, more products may fit in the list. Some of the excess listings may thus fit on the screen. Additional details regarding accommodating the listed products in the updated SRP in the user interface are discussed in subsequent sections (e.g., regarding FIG. 6 ).

[0085] In some embodiments, the external front-end system may remove some products from the listed products when they have been added to the shopping cart or when the user purchases them.

[0086] In step 460, the external front-end system 103 may then combine the listed products with the list of products in the original SRP (e.g., the SRP stored in cache). Together, in step 470, the external front-end system 103 may provide the products to the user device in response to the user request returned to the SRP.

[0087] In step 480, in response to the user request for the SRP returned in step 470, the external front-end system 103 may generate an updated SRP that combines the original SRP (e.g., the SRP stored in cache) and the listed products. The external front-end system 103 may then send the updated SRP to the requesting user device for display. In some embodiments, the original SRP may be stored in cache on the user device. The external front-end system 103 may send the listed products to the user device and instruct the user device to combine and display the listed products with the original SRP stored in cache.

[0088] In some embodiments, in response to a user request to repeat a search after viewing a product, when no SRP is stored in the cache, the external front-end system 103 may first search and generate the SRP, and then proceed to combine the SRP with the listed products.

[0089] In step 490, the requesting user device may display the updated SRP in the user interface. In some embodiments, the updated SRP includes the original SRP so that the user's original search process is not interrupted, thereby improving the user experience.

[0090] As shown in FIG6 , updated SRP 650 may include original SRP 610a and original SRP 610b, as well as suggested similar products 660 listed in step 450. In some embodiments, external front-end system 103 may provide the suggested similar products and instructions regarding display locations to a user device (e.g., mobile device 102A or computer 102B). In this exemplary embodiment, external front-end system 103 instructs the user device to split the list of products in original SRP 610 (including, for example, original SRP 610a and original SRP 610b) into two parts 610a and 610b, and insert suggested similar products 660 between the two parts.

[0091] In some embodiments, the external front-end system 103 may combine the suggested similar products with the product listings from the original SRP 610a and the original SRP 610b to generate an updated product list. The external front-end system 103 may then provide the updated product list to the user device (e.g., mobile device 102A or computer 102B) for display.

[0092] In some embodiments, the external front-end system 103 may instruct the user device (e.g., mobile device 102A or computer 102B) to display a portion of the product list in the original SRP 610a, display the suggested similar products 660, and then continue to display the second portion of the product list in the original SRP 610b. In some embodiments, the suggested similar products are displayed as a banner inserted between the original SRP 610a and the original SRP 610b (e.g., below the first row of products in the original SRP 610a). In some embodiments, the banner may be located in a different position, such as at the bottom of the user interface, etc.

[0093] Advantageously, the user may be able to resume his / her search process with minimal interruption while seeing suggested similar products. This may improve the user experience using the search function.

[0094] In some embodiments, when the user switches between at least one SDP and SRP (e.g., browsing multiple products from the search results), steps 360 to 390 and steps 410 to 490 may be repeated. In some embodiments, step 450 may take into account the previous selection and eliminate the displayed product.

[0095] Although the present disclosure has been depicted and described with reference to specific embodiments thereof, it should be understood that the present disclosure may be practiced in other environments without modification. The foregoing description has been presented for illustrative purposes. The foregoing description is not exhaustive and is not limited to the precise forms or embodiments disclosed. Modifications and adaptations will be apparent to those skilled in the art from consideration of this specification and practice of the disclosed embodiments. Furthermore, although aspects of the disclosed embodiments are described as being stored in memory, those skilled in the art will appreciate that these aspects may also be stored on other types of computer-readable media, such as secondary storage devices, such as hard drives or CD ROMs, other forms of RAM or ROM, USB media, DVDs, Blu-ray discs, or other optical media.

[0096] Writing computer programs based on the description and disclosed methods is within the skill of an experienced developer. Various programs or program modules can be created using any of the techniques known to those skilled in the art or can be designed in conjunction with existing software. For example, program sections or program modules can be designed using the .NET Framework, the .NET Compact Framework (and related languages ​​such as Visual Basic, C, etc.), Java, C++, Objective-C, HTML, an HTML / AJAX combination, XML, or HTML containing a Java applet.

[0097] Furthermore, although illustrative embodiments have been described herein, one skilled in the art will recognize the scope of any and all embodiments based on this disclosure, including equivalent elements, modifications, omissions, combinations (e.g., of aspects of the various embodiments), adaptations, and / or alterations. The limitations in the claims are to be interpreted broadly based on the language employed in the claims and are not limited to the examples described in this specification or during the prosecution of this application. The examples are to be construed as non-exclusive. Additionally, the steps of the disclosed methods may be modified in any manner, including by reordering steps and / or inserting or deleting steps. Accordingly, it is intended that this specification and examples be considered merely illustrative, with the true scope and spirit being indicated by the following claims and their full scope of equivalents.

[0098] 100: System 101: Delivery Authorization Technology System 102A, 107A, 107B, 107C, 119A, 119B, 119C: Mobile devices 102B: Computer 103: External front-end system 105: Internal front-end system 107:Transportation System 109:Seller Portal 111: Shipping and order tracking system 113: Implementation Optimization System 114: Communication Network 115: Execute communication reporting channel 116: Interconnection service device 117: Supply Chain Management System 119:Warehouse Management System 121A, 121B, 121C: Third-party fulfillment system 123: Fulfillment Center Authorization System 125: Labor Management System 200: Fulfillment Center 201, 222: Truck 202A, 202B, 208: Objects 203: Arrival area 205: Buffer 206: Forklift 207: Unloading area 209: Picking Area 210: Storage unit 211: Packaging area 213: Hub Area 214: Transportation Agency 215: Camp area 216: Wall 217: Positioning System 217A, 217B, 217C: Sensors 218, 220: Package 224A, 224B: Delivery workers 226:Car 300, 400: Program 310, 320, 330, 340, 350, 360, 370, 380, 390, 410, 420, 430, 440, 450, 460, 470, 480, 490: Steps 500:Signal 510: Product feature related signals 520: Price 530: Product Category 540:Product Features 550: Social interaction related signals 550:Social signals 560: Click 570: Mention 580: Browsing / search history 610, 610a, 610b: Original SRP 650: Updated SRP 660: Recommended similar products

Claims

1. A computerized system for dynamically generating and modifying a user interface, the system comprising: At least one storage device, including instructions; at least one processor, configured to execute the instructions to perform the following steps: receiving a search request from a user device; In response to the search request, provide a list of at least one product to the user interface on the user device; receive a selection of a first product from the list of at least one product from the user device; The first product is provided to the user device for display on the user interface; multiple signals of the first product and the weight of each of the multiple signals of the first product are determined, wherein the multiple signals are product-specific and include product attribute category signals and social interaction category signals, the social interaction category signals being derived from historical interaction data of users associated with the first product; at least one second product is determined; a score is calculated for each of the at least one second product based on the multiple signals of the first product; the at least one second product is ranked according to the scores; In response to a request to re-display the list of the at least one product, the at least one second product is provided to the user device for display together with the list of the at least one product.

2. The system as described in claim 1, wherein the social interaction category signal is based on: the number of instances of clicking on the second product before viewing the first product during a session; the number of instances of clicking on the second product after viewing the first product during a session; or the number of instances of referencing both the second product and the first product in a single comment.

3. The system as described in claim 1, wherein determining the at least one second product includes: Determine whether a second product has the same or similar product attributes; Alternatively, a second product may be identified as having a high level of social interaction with the first product, wherein the high level of social interaction is indicated by the social interaction category signal.

4. The system as described in claim 3, wherein the product attributes include: Listed price; at least one category to which the first product belongs; And at least one property of the first product.

5. The system as claimed in claim 4, wherein the at least one property of the first product is received from the seller of the first product.

6. The system as described in claim 4, the step further comprising extracting the at least one property of the first product from the name of the first product.

7. The system as described in claim 3, wherein the high level of social interaction includes: The user's previous search history or previous browsing history; The second product and the first product were viewed during the same session; The second product and the first product were mentioned in the same comment.

8. The system of claim 1, wherein providing the at least one second product includes providing instructions to cause the user device to: divide the list of the at least one product into a first portion of the list of the at least one product and a second portion of the list of the at least one product; and insert the at least one second product into the list of the at least one product between the first portion and the second portion.

9. The system as described in claim 1, wherein the steps further include: In response to a request to re-display the list of the at least one product, the list of the at least one product is updated to include the at least one second product.

10. The system as described in claim 1, wherein: The user device is a mobile device, and providing the at least one second product to the user device includes providing instructions to cause the user device to: display a first portion of the list of the at least one product in a first location; and display at least one of the at least one second product below the displayed first portion. And a second portion of the list of the at least one product is displayed in a second position below the at least one second product shown.

11. A method for dynamically generating modified user interfaces, comprising: Receive search requests from the user's device; In response to the search request, a list of at least one product is provided to the user interface on the user device; The user device receives a selection of a first product from the list of at least one product; The first product is provided to the user device for display on the user interface; multiple signals of the first product and the weight of each of the multiple signals of the first product are determined, wherein the multiple signals are product-specific and include product attribute category signals and social interaction category signals, the social interaction category signals being derived from historical interaction data of users associated with the first product; at least one second product is determined; a score is calculated for each of the at least one second product based on the multiple signals of the first product; the at least one second product is ranked according to the scores; In response to a request to re-display the list of the at least one product, the at least one second product is provided to the user device for display together with the list of the at least one product.

12. The method as described in claim 11, wherein the social interaction category signal is based on: the number of instances of clicking on the second product before viewing the first product during a session; the number of instances of clicking on the second product after viewing the first product during a session; or the number of instances of referencing both the second product and the first product in a single comment.

13. The method of claim 11, wherein determining the at least one second product comprises: Determine whether a second product has the same or similar product attributes; Alternatively, a second product may be identified as having a high level of social interaction with the first product, wherein the high level of social interaction is indicated by the social interaction category signal.

14. The method as described in request item 13, wherein the product attributes include: Listed price; at least one category to which the first product belongs; And at least one property of the first product.

15. The method as described in claim 14, wherein the at least one property of the first product is received from the seller of the first product.

16. The method of claim 14 further includes extracting the at least one property of the first product from the name of the first product.

17. The method as described in claim 13, wherein the high level of social interaction includes: The user's previous search history or previous browsing history; The second product and the first product were viewed during the same session; The second product and the first product were mentioned in the same comment.

18. The method of claim 11, wherein providing the at least one second product includes providing instructions to cause the user device to: divide the list of the at least one product into a first portion of the list of the at least one product and a second portion of the list of the at least one product; and insert the at least one second product into the list of the at least one product between the first portion and the second portion.

19. The method as described in claim 11, further comprising: In response to a request to re-display the list of the at least one product, the list of the at least one product is updated to include the at least one second product.

20. The method as described in request item 11, wherein: The user device is a mobile device, and providing the at least one second product to the user device includes providing instructions to cause the user device to: display a first portion of the list of the at least one product in a first location; and display at least one of the at least one second product below the displayed first portion. And a second portion of the list of the at least one product is displayed in a second position below the at least one second product shown.

Citation Information

Patent Citations

  • Personalized recommendation method based on commodity property entropy

    CN102411754A

  • Intelligent performance-based product recommendation system

    US7809601B2

  • Recommendation system

    US7908183B2

  • Collaborative recommendations using item-to-item similarity mappings

    WO2000017792A1