WO2022263897A1 - Customized mattress - Google Patents

Customized mattress Download PDF

Info

Publication number
WO2022263897A1
WO2022263897A1 PCT/IB2021/055382 IB2021055382W WO2022263897A1 WO 2022263897 A1 WO2022263897 A1 WO 2022263897A1 IB 2021055382 W IB2021055382 W IB 2021055382W WO 2022263897 A1 WO2022263897 A1 WO 2022263897A1
Authority
WO
WIPO (PCT)
Prior art keywords
mattress
user
type
foam springs
mapping
Prior art date
Application number
PCT/IB2021/055382
Other languages
French (fr)
Inventor
Boris RIBICIC
Ieva BARADOUSKA
Original Assignee
Studio Moderna Brands International Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Studio Moderna Brands International Limited filed Critical Studio Moderna Brands International Limited
Priority to PCT/IB2021/055382 priority Critical patent/WO2022263897A1/en
Publication of WO2022263897A1 publication Critical patent/WO2022263897A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0621Item configuration or customization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation

Definitions

  • This disclosure relates to enabling online tactile impressions of a product, such as customized mattresses and, in particular, to a method and system that enables a tactile impression to be determined when shopping online for a personalized product, such as a customized mattress including a variety of foam springs arranged in ergonomic contoured configuration areas.
  • the online retailer may operate the brick-and-mortar store.
  • Implementations of the present disclosure may include a method of customizing a mattress.
  • a central server system receives a request to create a mattress from a user device.
  • a plurality of customization options for the mattress are transmitted to the user device.
  • the plurality of customization options are configured to be depicted on a display of the user device.
  • input data from the user device is received.
  • the input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • Generalized consumer proportional dimension data generated by an image generation server is received. Based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured confi guration areas is determined.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating.
  • a first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data.
  • a mapping of the mattress corresponding to the placement is retrieved. The mapping is transmitted to the user device.
  • An implementation includes a method of customizing a mattress.
  • a central server system receives a request to create a mattress from a user device.
  • a plurality of customization options for the mattress are transmitted to the user device.
  • the plurality of customization options are confi gured to be depicted on a display of the user device.
  • input data from the user device is received.
  • Tire input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • Generalized consumer proportional dimension data is received from the user device.
  • a first type of foam springs Based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas is received.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating.
  • a first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data.
  • a mapping of the mattress corresponding to the placement is retrieved. The mapping is transmitted to the user device.
  • a customized mattress production system includes a mattress production device, a storage device, and a central server system comprising a first interface and a second interface.
  • the first interface is configured to communicate with a user device.
  • the first interface transmits a plurality of customization options for a mattress to the user device.
  • the plurality of customization options are configured to be depicted on a display of the user device.
  • the second interface is configured to receive generalized consumer proportional dimension data of a body of a user and input data provided in view of the plurality of customization options.
  • the input data comprises at least one of a body weight measurement of the user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • the storage device stores a plurality of ergonomic contoured configuration areas.
  • the second interface communicates with the storage device to determine placement of a plurality of a first type of foam springs, a second type of foam springs and a thir d type of foam springs.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating.
  • the second interface corresponds with the storage device to retrieve a mapping comprising a first layer of tiie mattress and a second layer of the mattress.
  • the second layer comprises the first type of foam springs, the second type of foam springs and the third type of foam springs to be placed within the second layer of the mattress in corresponding ones of the plurality of ergonomic contoured configuration areas.
  • the mapping comprises a plurality of a fourth type of foam springs arranged in one of the plurality of ergonomic contoured configuration areas along a periphery of the second layer.
  • the second interface transmits the mapping to the mattress production device.
  • FIG. 1A illustrates an example system architecture for a customized mattress production system in accordance with an implementation of the present disclosure
  • FIG. 1B illustrates a block diagram depicting components for obtaining generalized consumer proportional dimension data in accordance with an implementation of the present disclosure
  • FIGs. 2A-2D illustrate exemplary options provided to a user device in accordance with an implementation of the present disclosure
  • FIG. 3A illustrates an exemplary mattress code in accordance with an implementation of the present disclosure
  • FIG. 3B illustrates an exemplary mattress layer architecture in accordance with an implementation of the present disclosure
  • FIGs. 4A-4D illustrate exemplary mappings in accordance with implementations of the present disclosure
  • FIG. 5 is a flow diagram illustrating a method of customizing a mattress using an image generation server in accordance with an implementation of the present disclosure
  • FIG. 6 is a flow diagram illustrating a method of customizing a mattress using generalized consumer proportional dimension data provided by the user device in accordance with an implementation of the present disclosure
  • FIG. 7 is a flow diagram illustrating a method of providing a customized mattress utilizing a trained neural network in accordance with an implementation of the present disclosure
  • FIG. 8 is a block diagram illustrating an exemplary neural network that may be used to anticipate a user’s tactile experience in accordance with an implementation of the present disclosure
  • FIG. 9 illustrates an example system architecture for training a neural network to produce a customized mattress in accordance with an implementation of the present disclosure
  • FIG. 10 is a flow diagram illustrating a method of a reinforcement learning algorithm in accordance with an implementation of the present disclosure
  • FIG. 11 illustrates a two-dimensional representation of an arrangement of scored clusters of consumers in accordance with an implementation of the present disclosure.
  • FIG. 12 is a block diagram illustrating an exemplary computer system, according to some implementations.
  • the customized mattress is provided to a user by a system that anticipates the user’s tactile experience.
  • the user may be provided with customization options for the mattress.
  • an optimized customized mattress is provided to the user.
  • the mattress as generated based on a customized mapping of foam springs in view of the user’s input.
  • the system may instead predict a mapping to better suit the user’s needs and the mapping may instead be provided to the user.
  • Correcting for the lack of tactile feel can be accomplished by anticipating a consumer’s tactile experience utilizing generalized proportion dimension data of the consumer and/or preferences of the consumer as input for static and/or adaptive pattern recognition algorithms.
  • the systems and methods of the present disclosure obtains a consumer’s input regarding various body measurements, sleep position (i.e., side, back, front), consumer’s dimensions, and/or personal preferences to customize a mattress the consumer will find comfortable.
  • the present disclosure includes a method that provides an online configurable customized mattress by “feeling” for the consumer.
  • aspects of the present disclosure provide an online store utilizing generalized proportion dimension data of the consumer and/or consumer preferences to select an optimal customized mattress by anticipating consumer tactile experiences.
  • a consumer may visit the online store via a website or through the use an application (app).
  • the consumer may provide input data comprising generalized proportion dimension data of the consumer and/or preferences in response to a query sent via the website and/or app.
  • the consumer s preferences and/or the consumers generalized consumer proportion dimension data (also referred to as
  • the unique and/or customized mattress may comprise one of set of predefined spring mappings recognized by the online store as matching the pattern of consumer input data.
  • the spring mapping may be a derivation created by the online store of one or more initial predefined spring mappings. Accordingly, the spring mappings of the unique and/or customized mattress may be a based on static and/or adaptive pattern recognition.
  • FIG. 1A illustrates an example system architecture 100 for a customized mattress production system.
  • System architecture 100 may be used by an online store.
  • the system architecture 100 includes a user device 102, a network 105, a central server system 104, a storage device 110, a mattress production device 112, and an image generation server 114.
  • System architecture 100 unifies a pathway for transfers of data and/or instructions between the devices included therein. Through a series of transfers of data and/or instructions between devices, system architecture 100 may carry out one or more functions.
  • Devices included in system architecture 100 may transfer data and/or instructions to other devices included in system architecture 100 or to devices external thereto through network 105.
  • user device 102 may transfer data to central server system
  • network 105 may include a public network
  • a private network e.g., a local area network (LAN) or wide area network
  • WAN wide area network
  • wired network e.g., Ethernet network
  • wireless network e.g., an 802.11 network or a Wi-Fi network
  • cellular network e.g., a Long Term Evolution (LTE) network
  • routers hubs, switches, server computers, and/or a combination thereof.
  • LTE Long Term Evolution
  • storage device 110 may be a memory (e.g., random access memory), a cache, a drive (e.g., a hard drive), a flash drive, a database system, or another type of component or device capable of storing data.
  • Storage device 110 may also include multiple storage components (e.g., multiple drives or multiple databases) that may also span multiple computing devices (e.g., multiple server computers).
  • Storage device 110 may store multiple mappings of mattresses.
  • the mappings of mattresses stored within storage device 110 may include one or more predefined mappings of foam springs and/or one or more derivations created by the online store of one or more of initial predefined spring mappings.
  • the spring mappings within storage device 110 may be arranged in ergonomic contoured configuration areas.
  • a contoured configuration area may include one or a cluster of the same foam spring types.
  • User device 102 may include computing devices such as personal computers
  • User device 102 includes a display device 116, a camera 120, and a browser 122.
  • Central server system 104 includes a first interface 106, a second interface 108, and a neural network 124. Although first interface 106, second interface 108, and neural network 124 is depicted as being internal to central server system 104, in other implementations, one or more of these may be external to central server system 104 and may be remotely accessible by central server system 104. Details regarding neural network 124 are descried herein with respect to FIGs. 7-9.
  • interactions between user device 102 and central server system 104 and/or image generation server 114 may be through browser 122.
  • first interface 106 and/or second interface 108 may interact with user device 102 through browser 122.
  • an app or web-based application may run within browser 122 to allow a consumer employing user device 102 to order a customized mattress created by an online store.
  • User device 102 may not have to install an app and may access the online store to create the customized mattress website through browser 122.
  • user device 102 may download an app to order the customized mattress.
  • Browser 122 or an app may allow a consumer to enter input data utilized by the online store to anticipate the consumer’s tactile experience when creating a customized mattress, regardless of whether a browser program running on browser 122 is a stand-alone program or an embedded program, such as a browser program included as part of an operating system, or an installed app.
  • user device 102 Although a single user device is depicted, in other implementations, two or more user devices may be used. In general, functions described in one implementation as being performed by user device 102 can also be performed on other user devices in other implementations if appropriate. In addition, the functionality attributed to a particular component can be performed by different or multiple components operating together.
  • Central server system 104 includes a first interface 106 and a second interface
  • Central server system 104 may be one or more servers and/or computing devices (such as a rackmount server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, etc.), data stores (e.g., hard disks, memories, databases), networks, software components, and/or hardware components that may be used produce a customized mattress.
  • central server system 104 may allow the online store to anticipate the consumer’s tactile experience when creating a customized mattress for the consumer and output a mapping of the best mattress to mattress production device 112.
  • First interface 106 and/or second interface 108 may be an application programming interface (API).
  • An API defines interactions between software application(s) and/or mixed hardware-software intermediaries. An API may gather data and/or communicate unidirectionally or bidirectionally with other applications.
  • First interface 106 and second interface 108 may communicate with each other and with user device 102, image generation server 114 and/or any other applications and/or devices. In an implementation, first interface 106 may communicate with user device 102 and may transmit and/or receive data from user device 102. Second interface 108 may communicate with image generation server 114 and/or user device 102 and may transmit and/or receive data from image generation server 114 and/or user device 102, respectively.
  • a consumer employing user device 102 who wishes to purchase a mattress customized for his/her comfort by the online store may visit a website and/or an app.
  • central server system 104 may provide questions to the consumer via user device 102.
  • the consumer may view, via display device 116, multiple customization options for the mattress provided by first interface 106 of central server system
  • the consumer may view the multiple customization options on a webpage of a browser, an app, etc.
  • the consumer may provide input data via user device 102 in response to the multiple customization options to second interface 108 of central server system 104.
  • the consumer may provide generalized consumer proportion dimension data based on the consumer’s dimensions to second interface 108 of central server system 104 via user device
  • the generalized consumer proportion dimension data may include one or more of the following: a distance between hips and shoulders of the consumer, a height of the consumer, weight of the consumer, a shoulder width, a hip circumference, etc. Other distances/measurements may also be included.
  • the generalized consumer proportion dimension data may be determined by image generation server 114 based on photograph(s) obtained by image generation server 114 and/or based on information provided by the consumer via user device 102.
  • a “consumer” or a “user” may be represented as a single individual. However, other implementations of the disclosure encompass a “consumer” or a “user” being an entity controlled by a set of consumers and/or an automated source.
  • Image generation server 114 may be and/or include one or more computing devices (e.g., servers), storage devices, networks, software components, and/or hardware components that may be used to allow consumers to provide photographs or other media using one or more mobile devices (e.g., phones, tablet computers, laptop computers, wearable computing devices, etc.) and/or any other suitable devices.
  • image generation server 114 may communicate with user device 102 via network 105 using telephony communication, Multimedia Message Service (MMS) messaging, or another app to obtain or otherwise scan a photograph.
  • MMS Multimedia Message Service
  • Image generation server 114 may allow a consumer employing user device 102 to upload or otherwise capture a live photograph using the camera of user device 102.
  • the consumers may be provided with an opportunity to control central server system 104 and/or image generation server 114 collects consumer information.
  • certain data may be treated in one or more ways before it is stored or used, so that personally identifiable information is removed.
  • a consumer’s identity and/or photograph may be treated so that no personally identifiable information can be determined for the consumer, or a consumer’s geographic location may be generalized where location information is obtained (such as to a city, ZIP code, or state level), so that a particular location of a consumer cannot be determined.
  • the consumer may have control over how information is collected about the consumer and used by image generation server 114, central server system 104, and/or any other component of the system architecture 100.
  • image generation server 114 may assign an identification
  • image generation server 114 may associate the ID of the consumer with the information and discard the photograph. Therefore, image generation server 114 may not store the photograph and expunge the photograph upon calculating the relevant information and thus, the photograph is destroyed and cannot be distributed.
  • central server system 104 may obtain a mapping of the customized mattress from storage device 110.
  • a consumer employing user device 102 may view the mapping on display device 116 and select to order the customized mattress based on the mapping.
  • the order for the customized mattress is provided by central server system 104 to mattress production device 112 via network 105. Details regarding the generalized consumer proportional data and how it is obtained are described herein below with respect to FIG. 1B
  • the mapping includes various layers of the mattress.
  • the mapping of one (or more) layer(s) of the mattress include(s) various types of foam springs placed in corresponding ones of multiple ergonomic contoured configuration areas.
  • Each type foam spring may have a unique corresponding strength/firmness and/or density rating. While firmness may be quantified using various measurements, such as indentation force deflections, it may also be qualified. Examples of qualified firmness include super soft, soft, medium, hard, super hard, etc. Density ratings refer mass to per unit volume, and may be ranked numerically (from most dense to lease dense or vice versa) or in other ways.
  • Mattress production device 112 may then produce the customized mattress.
  • John wishes to order a customized mattress.
  • John may employ user device 102 to access an online store via a website and/or a mobile phone application (app) to view various customization options for the customized mattress.
  • the customization options are sent by first interface 106 of central server system 104 to user device 102 so that John can view them on display device 116. Exemplary customization options are described in the FIGs. 2A-2D below.
  • User device 102 may capture John’s responses to the customization options and the responses may be transferred from user device 102 to second interface 108 of central server system 104 via network 105. Such responses are referred to as input data.
  • the input data may include one or more of the following: John’s body weight measurement, a total number of consumers (including John) utilizing the mattress, a mattress size, John’s sleep position, John’s height measurement, a location of pain experienced by the John, John’s age, and/or John’s mattress firmness preference.
  • John may be provided with a query to provide dimensional measurements relating to his body. Examples of these measurements include a distance between his hips and shoulders of the consumer, his height, his shoulder width, or his hip circumference. Such measurements are referred to as John’s consumer proportional dimension data.
  • the request for the generalized consumer proportional dimension data may be submitted by first interface 106 of central server system 104 to be displayed on display device 116 of user device 102.
  • John may input the generalized consumer proportional dimension data manually onto the website and/or app and second interface 108 of central server system 104 may receive the consumer proportional dimension data.
  • the generalized consumer proportional dimension data may be provided to central server system 104 by first interface 106 or by another interface or software program.
  • John may wish to use a photo scanning app to determine his consumer proportional dimension data. John may access the photo scanning app which would instruct John to use camera 120 to take one or more photographs.
  • the photo scanning app may be controlled by image generation server 114, central server system 104, and/or another device(s), server(s), and/or system(s).
  • the photo scanning app would receive the photograph(s) captured by camera 120 and transmitted via user device 102.
  • the photo scanning app may assign an identification (ID) or code to the photograph(s) in order to associate the photograph(s) with John.
  • the ID or code may be anonymous and/or securely transferred (e.g., using public key/private key infrastructure, etc.) so that John’s personal information is not transferred.
  • the photo scanning app may determine the dimensions of the consumer and only the dimensions may be transferred by the photo scanning app to the central server.
  • image generation server 114 scans the photograph(s) to determine the consumer proportional dimension data.
  • Image generation server 114 may use any of a variety of methods and/or algorithms in order to obtain the consumer proportional dimension data. Image generation server 114 then transmits the generalized consumer proportional dimension data to second interface 108 of central server system 104 (and/or first interface 106 and/or another device(s), server(s), and/or system(s)) via network 105 and the photograph(s) are destroyed and not cached.
  • the generalized consumer proportional dimension data may be transferred with the ID or code so central server system
  • Central server system 104 may properly associate the ID or code with John. [0054] Central server system 104 may then determine the optimal mattress for John based on the input data and the generalized consumer proportional dimension data. Central server system 104 may create a mattress code such as a stock-keeping unit (SKU), a QR code, etc., that contains data which corresponds to the mattress providing John with an optimal tactile experience. Details regarding this code are descried herein with respect to FIG. 3A.
  • SKU stock-keeping unit
  • QR code etc.
  • Central server system 104 may communicate with storage device 110, via network 105, in order to obtain a mapping of the mattress providing John the optimal tactile experience.
  • second interface 108 (and/or first interface 106 and/or another device(s), server(s), and/or system(s)) may correspond with storage device 110.
  • Storage device 110 may store multiple foam spring configurations and/or multiple ergonomic contoured configuration areas (described in detail herein below) for mattresses.
  • storage device 110 may store one or more databases of mattress codes.
  • Second interface 108 may communicate with the storage device 110 to determine placement of types of foam springs.
  • John’s mapping may include multiple layers. Details regarding mattress layers are described herein with respect to FIG. 3B.
  • the first layer of the mattress in the mapping may be a layer of foam.
  • the second layer may include ergonomic contoured configuration areas where each ergonomic contoured configuration area contains one (or more) types of foam springs.
  • the mapping may also include a type of foam spring of an ergonomic contoured configuration area that is placed along a periphery of the second layer.
  • central server system 104 obtains the mapping, first interface 106 (and/or second interface 108 and/or another device(s), server(s), and/or system(s)) of central server system
  • central server system 104 may provide the mapping for display to John on display device 116 of user device 102.
  • central server system 104 may format the mapping to provide an aesthetically appealing graphic(s) to user device 102. Should John wish to purchase the mattress in view of the mapping, John may do so by adding the mattress mapping to his shopping cart and checking out using any electronic transaction method.
  • Central server system 104 may obtain a modification to the mapping (or retrieve a new mapping from storage device 110) in view of John’s changes.
  • the modifications may be to modify any one or more ergonomic contoured configuration areas including modifying the placement of the foam springs. John may then check out of his shopping cart containing the modification to the mapping.
  • Central server system 104 may thereafter receive a confirmation of John’s purchase upon a successful checkout.
  • a payment processing device may transmit a payment confirmation to central server system 104.
  • the second interface transmits the mapping (or the modification to the mapping, if applicable) to mattress production device 112.
  • Mattress production device 112 may use the mapping to build John’s customized mattress.
  • FIGs. 2A-2D illustrate exemplary user interfaces displaying options.
  • FIG. 2A illustrates exemplary user interfaces 200.
  • User interfaces 200 may be depicted on display device 116 of user device 102.
  • User interfaces 200 may be generated by first interface 106
  • An interface 202 requests a user to enter his/her name.
  • An interface 204 requests that a user enter a mattress size.
  • An interface 206 requests that a user provide a number of users that that will utilize the mattress.
  • An interface 208 requests information from the user regarding what side of the bed he/she sleeps on.
  • An interface 210 requests that a user provide his/her favorite sleep position.
  • An interface 212 displays an input of “I don’t know” received from a user employing user device 102.
  • An interface 214 displays an input provided by the user who selected “side”, “back”, and “front” in response to the question posed in interface
  • user interfaces 216 are depicted.
  • An interface 218 requests that a user provide impact of his/her sleep.
  • An interface 220 further depicts additional impacts selectable by the user.
  • An interface 222 requests that a user provide a comfort level preference.
  • An interface 224 requests that a user provide his/her gender.
  • An interface 226 request that a user provide his/her height.
  • An interface 228 depicts a selection from a user to toggle the measurement selection from the imperial system to the metric system.
  • An interface 232 requests that the user selects the option to take photo(s) via the photo scanning app.
  • An interface 234 requests that a user select how he/she wishes to take the photograph(s) (e.g., by either asking someone to help the user take photos or use the artificial intelligence (Al) assistant.
  • An interface 236 and an interface 238 provides guidance for taking pictures in a front view and a side view, respectively. Based on the photograph(s), image generation server 114 can generate generalized consumer proportional dimension data for the user.
  • Interfaces 240 allow a user employing user device 102 to manually input generalized consumer proportional dimension data.
  • An interface 242 requests that a user input his/her shoulder width.
  • An interface 244 requests that a user input his/her hip circumference.
  • An interface 246 requests that a user input his shoulder to hip distance. Other measurements may be requested to aide in creation of an optimized customized mattress for the user.
  • FIG. 3A illustrates an exemplary mattress code 300.
  • mattress code 300 may be generated by central server system 104 in response to receiving input data from user device 102. The input data is responsive to customization options provided by central server system 104. Exemplary customization options are shown in FIGS. 2A-2D. In other implementations, mattress code 300 may be generated by another device(s), server(s), interface(s) and/or system(s)).
  • Mattress code 300 includes a first segment 302, a second segment 304, a third segment 306, a fourth segment 308, a fifth segment 310, and a six segment. All the segments combine to create mattress code 300 corresponding to a customized user mattress. Fewer or greater segments than depicted may be used. One or more of the segments may be left blank and not contain any digits. Moreover, any combination of alphanumerical numbers, symbols, etc. may be contained in the segments.
  • First segment 302 contains the digits 9019.
  • First segment 302 may be a code that corresponds to a user’s selection of a mattress size.
  • John may wish to order a double-sized mattress.
  • user device 102 may transmit the input data to central server system 104 via second interface 108.
  • central server system 104 may encode the selection for a double-sized mattress as 9019.
  • a user may select a mattress size as single (e.g., twin), double (e.g., full), queen, king, super king, California king or another size.
  • An input data selection of a double size mattress, a king size mattress, and super king size mattress may correspond to the following corresponded segmented digits, respectively: 13519, 15020, and
  • Second segment 304 contains the digit 1. Second segment 304 may be a code that corresponds to a user’s selection of a number of users that will utilize the mattress.
  • John may wish to indicate that a single user will utilize the mattress.
  • user device 102 may transmit the input data to central server system 104 via second interface 108.
  • central server system 104 may encode the selection for a single user as 1. Should the input data indicate that two users will utilize the mattress, second segment 304 may contain the digit 2.
  • Third segment 306 contains L.
  • Third segment 306 may be a code that corresponds to a user’s selection of a side of the bed the user sleeps on. Referring again to the example above, John may wish to indicate that he prefers to sleep on the left side of the bed.
  • user device 102 may transmit the input data to central server system 104 via second interface 108.
  • central server system 104 may encode the selection for the left side of the bed as L. Should the input data indicate that the user selects that he/she sleeps on the right side of the bed, third segment 306 may contain the digit R.
  • Fourth segment 308 contains S.
  • Fourth segment 308 may be a code that corresponds to a user’s selection of a comfort level of a user in terms of a firmness scale of the mattress.
  • John may wish to indicate that his comfort level is the softest.
  • user device 102 may transmit the input data to central server system 104 via second interface
  • central server system 104 may encode the selection for the comfort level as S.
  • a comfort indicator may be provided on an interface to the user using a sliding feature, as depicted in interface 222. Should the input data indicate that the user selects a medium comfort level, fourth segment 308 may contain M; and if the user selects a firmest comfort level, fourth segment 308 may contain F.
  • Fifth segment 310 contains B.
  • Fifth segment 310 may be a code that corresponds to a user’s selection of a sleep position.
  • John may wish to indicate that his sleep position is back.
  • John provides input data indicative of a back position in response to the customization option requesting which position
  • user device 102 may transmit the input data to central server system 104 via second interface 108.
  • central server system 104 may encode the selection for the back position as B. Should the input data indicate that the user prefers a front position, back position, back and front, or the user selects the option “I don’t know,” fifth segment 310 may contain B; and if the user selects all the positions, side, side and back or side and front, fifth segment 310 may contain S.
  • Sixth segment 312 contains T.
  • Sixth segment 312 may be a code that corresponds to a user’ s height. Referring again to the example above, John may wish to provide his height (and it may be determined that his height is tall, i.e., the distance between his shoulder and hips is above 60 cm and thus, his height exceeds a certain length, etc.). Otherwise,
  • John may simply input the distance between his shoulder and hips or other measurement as input data.
  • information regarding height may be determined in view of generalized consumer proportional dimension data that is determined in view of photograph(s) of the user.
  • edges of a mattress may have a contoured configuration area that contains firmer springs to allow for users to sit on the edges of mattress with support.
  • John or image generation server 114 or central server system 1014
  • John provides input data indicative of a tall height (i.e., the distance between the user’s shoulder and hips being above 60 cm)
  • user device 102 and/or image generation server 114 may transmit the input data to central server system 104 via second interface 108. Otherwise, central server system 104 may determine that the user is tall.
  • central server system 104 may encode the selection for a tall height as T. Should the input data and/or the generalized consumer proportional dimension data indicate a short selection/determination
  • sixth segment 312 may contain S or sixth segment 312 may be left blank.
  • one or more associated mappings stored by storage device 110 can be obtained by central server system.
  • FIG. 3B illustrates an exemplary mattress layer architecture 314.
  • Mattress layer architecture 314 contains four layers, however, fewer or greater layers than depicted may be used.
  • a first layer 316 may be a memory foam layer.
  • a second layer 318 may be a foam layer that can be customized by the online store upon based on anticipated user tactile experience.
  • Second layer 318 may contain a soft memory foam, a soft medium memory foam, a medium super soft foam, a medium firm super soft foam, or a firm polyurethane foam.
  • second layer 318 contains two separate types of layers of foams (one for a user utilizing a left side of the mattress and another for a user utilizing a right side of the mattress). However, more or less types of foams than depicted may be used. Other types of foams of materials may be used.
  • a third layer 320 may be constructed based on the mapping of the customized user mattress. Exemplary mappings are described below with respect to FIGS. 4A-4D. Third layer 320 is completely encased by a fourth layer 322. However, other arrangements may be used. Third layer 320 be constructed based on core options indicated by a corresponding mapping. For example, third layer 320 may be constructed for a user based on the following designations: short and soft, short and firm, tall and soft, or tall and firm. These designations each include a user’s height (where short indicates that the distance between a user’s shoulder and hips is below 60 cm and tall indicates that distance between a user’s shoulder and hips is above 60 cm). Other designations and combinations may be used.
  • FIG. 3B depicts exemplary dimensions of the layers, other dimensions may be used.
  • Mattress layer architecture 314 will vary based on the mattress size and the mapping of the customized mattress created by a user. Therefore, mattress layer architecture 314 may be stored by storage device 110 in a database along with mappings.
  • mattress layer architecture 314 may be obtained by central server system 104 and/or mattress production device 112 in order to create a mattress.
  • foam layers and/or foam springs are described, in other implementations, other material of layers, metal springs, other springs, etc. may be used.
  • layers of air may be placed in the mattress layer architecture. The air may be pumped into designated layers and the amount of air may be controlled by a user using a remote control, a mobile device having an app, or other device.
  • One or more of the layers of the mattress may include sensors.
  • FIGs. 4A-4D illustrate exemplary mappings.
  • FIG. 4A illustrates single user mappings 400.
  • Mappings 400 may be stored in storage device 110 as depicted in FIG. 1A.
  • Mappings include a layout of contoured configuration areas. Furthermore, each contoured configuration area may include one or more number of foam springs and/or one or more types of foam springs. For example, the following foam springs are depicted: foam A, foam B, foam
  • foam springs may be used.
  • a mapping 402 may correspond to a designation of short and soft.
  • a table 404 provides a key of mapping 402. For example, row 1 of mapping 402 includes 17 foam D springs and 17 foam E springs.
  • a mapping 406 may correspond to a designation of tall and soft.
  • a table 408 provides a key of mapping 406.
  • a mapping 410 may correspond to a designation of short and firm.
  • a table 412 provides a key of mapping 410.
  • a mapping 414 may correspond to a designation of tall and firm.
  • a table 416 provides a key of mapping 414. Other combinations of mappings and/or charts than depicted may be used. Furthermore, other designations than depicted may be used. Additionally, tables
  • mapping 404, 408, 412, and/or 416 may be stored in storage device 110 along with mapping 402, mapping 406, mapping 410, and/or mapping 414, respectively, and may be obtained by central server system 104 and/or mattress production device 112 in order to create a mattress.
  • Mappings, tables, and/or mattress layer architectures may be stored within database(s) of storage device 110 or elsewhere and may be accessible by central server system 104 and/or mattress production device 112.
  • FIG. 4B illustrates double (or two) user mappings 420.
  • Mappings 420 may be stored in storage device 110 as depicted in FIG. 1A.
  • a mapping 422 includes a layout of contoured configuration areas. Mapping 422 may correspond to a designation of short and soft on the left side and tall and firm on the right side.
  • a table 424 provides a key of mapping 422.
  • row 1 of mapping 422 includes 18 foam D springs and 18 foam F springs.
  • a mapping 426 may correspond to a designation of short and firm on the left side and tall and soft on the right side.
  • a table 428 provides a key of mapping 426.
  • the bridge of foam springs itself may be one or more contoured configuration areas. However, other arrangements of bridges may be utilized. Exemplary bridges containing the same types of foam springs are depicted in mappings 422 and 426 of FIG. 4B.
  • the bridge contains a pattern of foam layers in the middle which separates a left side of the mattress mapping from a right side of the mattress mapping.
  • FIG. 4C illustrates a mapping 430.
  • Mapping 430 may be generated by central server system 104 based on a mapping obtained from storage device 110.
  • Mapping 430 may be an image formatted by central server system 104 to contain aesthetically appealing graphic(s) which may be transmitted to user device 102 (and viewable by the user via display device 116).
  • FIG. 4D illustrates a mapping 432.
  • Mapping 432 may be generated by central server system 104 based on a mapping obtained from storage device 110.
  • Mapping 432 may be an image formatted by central server system 104 to contain aesthetically appealing graphic(s) which may be transmitted to user device 102 (and viewable by the user via display device 116).
  • the mappings provided in FIGs. 4A-4D contain exemplary mappings and other types of mappings may be used.
  • generalized consumer proportional dimension data may be an image generation server as depicted in FIG. 1B.
  • FIG. 1B illustrates a block diagram 130 depicting components for obtaining generalized consumer proportional dimension data.
  • Block diagram 130 includes a back-end service 132, an app 134, an API 136, a measurement service 138, and a recommendations service 140.
  • Back-end service 132, app 134, API 136, measurements services 138, and/or recommendations service 140 may include processing logic that comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
  • Back- end service 132 may run on central server system 104 depicted in FIG. 1 A or elsewhere.
  • App 134 may be app or web-based application that runs on user device 102 depicted in FIG. 1A or elsewhere.
  • API 136 defines interactions between software application(s) and/or mixed hardware-software intermediaries. API 136 may gather data and/or communicate unidirectionally or bidirectionally with other applications and may run on central server system
  • Measurements service 138 may run on image generation server 114 depicted in
  • FIG. 1A or elsewhere.
  • Recommendations service 140 may run on central server system 104 depicted in FIG. 1A or elsewhere.
  • John is asked to input generalized consumer proportional dimension data in order to order a custom mattress.
  • John may be provided with interface 232 as depicted in FIG. 2C which requests that the John selects the option to take photo(s) via the photo scanning app.
  • John may launch his application as shown in block 142.
  • API 136 creates a person of record.
  • API 136 associates the user input with the person (John). Such association(s) may be stored in a database.
  • John may then be asked to capture one or more pictures using his mobile device’s camera.
  • app 134 obtains access to the device’s camera and receives camera flow input (i.e., in the form of a captured photograph(s)).
  • App 134 then transmits the camera flow input to API 136.
  • API 136 receives or otherwise uploads the photograph(s).
  • API 136 stores the photograph(s) at a storage device.
  • the storage device may be any device that stores photographs. The photographs are securely stored and may not have any identification information or coded/anonymous identification information.
  • API 136 then transmits the photograph(s) to measurements services 138.
  • measurements service 138 performs face detection on the photograph(s).
  • measurements services 138 performs body detection on the photograph(s).
  • measurements services 138 generates a 3D model of the face and/or body.
  • measurements services 138 performs adjustments to the 3D model. Such adjustments include accounting for any missing or distorted body portions, determining (and eliminating, as needed) any errors in the body portions, etc.
  • measurements services 138 then process the photograph(s) and calculates measurements. For example, measurements services
  • measurements services 138 scrubs or otherwise anonymizes the measurements so they are general and not specific to a person’s photograph(s).
  • measurements services 138 then destroys the photograph(s). The deletion of photographs is performed in a secure manner and is permanent.
  • measurements services 138 stores the measurements in a storage.
  • the storage may include a database.
  • Measurements services 138 transmits only the measurements from storage to recommendations service 140.
  • recommendations service 140 calculates a recommendation for a mattress/foam type best suited for the user in view of the generalized proportion dimension data and in block 174, the recommendations are transmitted by recommendations service 140 back to app 134.
  • the recommendations may include generalized proportion dimension data itself. App 134 may then use the recommendation along with other information to generate the best mattress mapping for the user.
  • FIG. 5 is a flow diagram illustrating a method 500 of customizing a mattress using an image generation server, according to an implementation of the present disclosure.
  • the method 500 may be performed by processing logic that comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
  • processing logic comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
  • method 500 may be performed by a central server system (e.g., central server system 104) as shown in FIG. 1A.
  • a central server system e.g., central server system 104
  • method 500 starts at block 502.
  • a request is received in a central server system to create a mattress.
  • the request is sent from a user device.
  • central server system 104 receives a request to create a mattress.
  • the request is sent from user device 102.
  • a user employing user device 102 may send a request to central server system 104 to create the mattress in any of a variety of ways. For example, the user may access a website on a web browser, click on a link, access a mobile app, etc., in order to create the mattress.
  • a plurality of customization options for the mattress are transmitted to the user device.
  • the plurality of customization options are configured to be depicted on a display of the user device. For example, as depicted in FIG.
  • central server system 104 transmits multiple customization options to user device 102 and the customization options are configured to be displayed on display device 116 of user device
  • FIGS. 2A-2D Some customization options are shown in FIGS. 2A-2D.
  • input data is received from the user device.
  • the input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • central server system 104 receives input data from user device 102 in response to transmitting the multiple customization options.
  • the input data includes one or more of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • central server system 104 receives generalized consumer proportional dimension data generated by image generation server 114.
  • a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas is determined.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating.
  • a first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. For example, as depicted in FIG.
  • central server system 104 determines placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of multiple ergonomic contoured configuration areas based on the input data and the generalized consumer proportional dimension data.
  • the placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas may be determined to match the consumer’s tactile experience with the mattress expected by the online store.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs includes a corresponding strength and density rating.
  • a first ergonomic contoured configuration area of the multiple ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data.
  • the strength rating may also be referred to as firmness.
  • a mapping of the mattress corresponding to the placement is retrieved.
  • central server system 104 retrieves the mapping of the mattress corresponding to the placement of the foam springs from storage device 110.
  • the mapping is transmitted to the user device.
  • central server system 104 transmits the mapping to user device 102.
  • User device 102 may provide the mapping for display to the user on display device 116.
  • the method then ends at block 518.
  • central server system 104 may retrieve tables corresponding to the mappings along with the mappings of mattresses from storage device 110.
  • mattress layer architectures may also be stored by storage device 110. Therefore, a mattress layer architecture indicative of one or more mattress layers may be retrieved by central server system 104.
  • FIG. 5 describes customization of a mattress based on generalized consumer proportional dimension data provided by image generation server 114.
  • user device 102 and not image generation server 114 may provide the same or similar generalized consumer proportional dimension data to central server system 104. This implementation is described below with respect to FIG. 6.
  • the generalized consumer proportional dimension data may be provided by both image generation server 114 and user device 102.
  • FIG. 6 is a flow diagram illustrating a method 600 of customizing a mattress using generalized consumer proportional dimension data provided by the user device.
  • the method 600 may be performed by processing logic that comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
  • hardware e.g., circuitry, dedicated logic, programmable logic, microcode, etc.
  • software e.g., instructions run on a processing device to perform hardware simulation
  • method 600 may be performed by a central server system (e.g., central server system 104) as shown in FIG. 1A.
  • a central server system e.g., central server system 104
  • method 600 starts at block 602.
  • a request is received in a central server system to create a mattress.
  • the request is sent from a user device.
  • central server system 104 receives a request to create a mattress.
  • the request is sent from user device 102.
  • a user employing user device 102 may send a request to central server system 104 to create the mattress in any of a variety of ways.
  • the user may access a website on a web browser, click on a link, access a mobile app, etc., in order to create the mattress.
  • a plurality of customization options for the mattress are transmitted to the user device.
  • the plurality of customization options are configured to be depicted on a display of the user device. For example, as depicted in FIG.
  • central server system 104 transmits multiple customization options to user device 102 and the customization options are configured to be displayed on display device 116 of user device
  • FIGS. 2A-2D Some customization options are shown in FIGS. 2A-2D.
  • input data is received from the user device.
  • the input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • central server system 104 receives input data from user device 102 in response to transmitting the multiple customization options.
  • the input data includes one or more of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
  • Other input data may be considered including a location of pain experienced by the user, disturbed sleep (disruptions in sleep, lack of proper amount of sleep), snoring, etc.
  • the location of pain may indicate that a user requires a particular type of foam in a contoured configuration area. For example, if the user has lower back pain, it may be beneficial to provide a contoured configuration area that corresponds to the area where the user’s lower back would fall on the mattress mapping that has a particular firmness determined to ease back pain.
  • Location of aches and pains that are input by the user enables alteration of the firmness of corresponding contoured areas.
  • users may be able to determine softer or former areas in particular areas of the mattress mappings and override the suggested mattress mapping.
  • generalized consumer proportional dimension data is received from the user device.
  • central server system 104 receives generalized consumer proportional dimension data from user device
  • placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas is determined.
  • the placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas may be determined to match the consumer’s tactile experience with the mattress expected by the online store.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength/firmness and density rating.
  • a first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. For example, as depicted in
  • central server system 104 determines placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of multiple ergonomic contoured configuration areas based on the input data and the generalized consumer proportional dimension data.
  • Each of the first type of foam springs, the second type of foam springs and the third type of foam springs includes a corresponding strength and density rating.
  • a first ergonomic contoured configuration area of the multiple ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data.
  • a mapping of the mattress corresponding to the placement is retrieved.
  • central server system 104 retrieves the mapping of the mattress corresponding to the placement of the foam springs from storage device 110.
  • the mapping is transmitted to the user device.
  • central server system 104 transmits the mapping to user device 102.
  • User device 102 may provide the mapping for display to the user on display device 116.
  • the method then ends at block 618.
  • the generalized consumer proportional dimension data includes one or more of the following: a distance between hips and shoulders of the user, a height of the user, a shoulder width, weight, or a hip circumference.
  • each of the multiple ergonomic contoured configuration areas include one of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
  • central server system 104 depicted in FIG. 1 A receives a confirmation from user device 102 to purchase the mattress in view of the mapping. For example, after the user receives the mapping, the user may be satisfied with the mapping and wish to purchase the mattress. The user may purchase the mattress in any of a variety of ways.
  • central server system 104 For example, a user may review his/her shopping cart and check out and submit payment. After central server system 104 receives confirmation of the payment, central server system 104 provides the mapping to mattress production device 112 to produce the mattress.
  • central server system 104 receives a modification of the mapping. For example, the user may review the mapping and decide to modify it. The user may modify the mapping by going back to one of the customization options depicted on display device 116 and change his/her responses.
  • the modification to the mapping may include a modification to one or more of the multiple ergonomic contoured configuration areas including a modification of the placement of one or more of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
  • central server system 104 generates a code in view of the input data and the customized options.
  • the code may be modified or a new code may be created based on the input data, the customized options, and/or input provided by a neural network, as described herein.
  • the mattress mappings themselves may be updated by the neural network and used to create customized mattress for future users as described herein.
  • the mattress mappings may be updated as more consumer data is collected to continually refine selection and contouring. Updating of mattress mapping may be performed manually or via neural network 124.
  • the code refers to (and is based on) the variables input by the consumer and that code is then used to determine the subsequent parts used to personalize the mattress by mattress production device 112 (or other device).
  • the code generated by central server system 104 may contain an indication of one or more predefined mappings recognized by the online store as matching the pattern of consumer input data.
  • the generated code may contain one or more mappings created or otherwise acquired by the online store from one or more initially predefined mappings.
  • mappings of the unique and/or customized mattress may be a based on static and/or adaptive pattern recognition.
  • artificial intelligence may be implemented via neural network
  • Neural network 124 may be a computational tool capable of recognizing patterns, making predictions, identifying outliers, and/or identify alterations based on past input/mistakes. Inclusion of neural network 124 within system architecture 100 may enable the online store to better anticipate a user’s tactile experience. Training neural network 124 with user feedback, such as survey responses, may enable adaptive pattern recognition allowing for better anticipation of a consumer’s tactile experience from consumer input data. Extending the training by allowing neural network 124 to correct for consistent tactile insufficiencies may enable the creation derivative mappings to be stored within storage device 110.
  • Allowing neural network 124 to increase its reward during training by taking the action of identifying and excluding customers may enable the identification of costumer populations not served by the predefined and/or derived mappings stored within storage device 110. In so doing, neural network 124 may motivate the creation of new mappings.
  • FIG. 7 is a flow diagram illustrating a method 700 of providing a customized mattress utilizing a trained neural network, such as neural network 124.
  • an initial set of mattress mappings (each of which includes a mapping of foam springs and/or foam layers) designed to provide a believed optimal tactile experience to one or more suspected subsets of users are stored.
  • a believed optimal tactile experience is one that is predicted by a developer for a user.
  • the mattress mappings may be stored in storage device 110 or elsewhere.
  • the input data received at central server system 104 is then provided to trained neural network 124 as input enabling neural network 124 to select the mattress mapping from best corresponding with the input data, as indicated by block 706.
  • Training neural network may be accomplished using any algorithm allowing neural network to associate input data corresponding to the one or more suspected subsets of users with the mattress mapping designed to provide a believed optimal tactile experience to for each of the subsets. Accordingly, neural network may be trained to associate input data with the mattress mapping believed to provide the user with an optimal tactile experience.
  • neural network 124 may be trained with utilizing a pattern recognition algorithm (e.g., backpropagation, etc.). Regardless of how trained, neural network
  • 124 provides users within one of more the suspected subsets a mattress containing an initially matched mapping, as depicted by block 708.
  • the mattress may be given as the result of purchase, gift, participation in trial program, etc.
  • the means of conveyance may not be of particular importance, so long as it provides the recipient an opportunity to use the mattress, as depicted in block 710.
  • a user uses the mattress (e.g., lays on it, sleeps on it, tests it out, etc.).
  • the user receives a survey distributed by central server system 104 in block 712 to rate his/her tactile experience.
  • the rating may be obtained from a variety of questions, such as experience of pain, perception of firmness, quality of sleep, rating of comfort, support, and ability to fall asleep. Additional information regarding the surveys are described herein.
  • the survey Upon completion of the survey, as shown in block 714, the survey is returned by the user. Specifically, central server system 104 receives the completed survey from user device 102. Completed surveys are then used to retrain neural network 124 at block 716, changing the selection algorithm to better anticipate the tactile impression of future customers/users. The method ends at block 718.
  • neural network 124 may be trained/retrained as to recognize patterns within the input data and/or customized options distinguishing users from their initial suspected subset, such that the neural network selects a different predefined mapping, or none at all, for users not having an acceptable tactile experience.
  • the retraining may be accomplished using anyone or more of a variety of learning algorithms, such as backpropagation or reinforcement learning.
  • Reinforcement learning is a type of machine learning technique that enables an agent to learn in an interactive environment by trial and error using feedback from its own actions and experiences. Reinforcement learning has an input and uses rewards and punishment as signals for positive and negative behavior. A state is defined as a current situation of the agent.
  • the state will be the input data provided by the user
  • the action will be paring a user input data with a mapping stored in storage device 110
  • the reward will be a survey score provided by the consumer after using the mattress.
  • the goal would be to minimize potential negative user(s)’ ratings (submitted, for example, via survey responses) and to maximize potential favorable ratings.
  • neural network 124 may learn to take actions not tolerated in retail. Selling products such as mattresses to consumers is the goal of retail businesses, whether the businesses sell mattresses online or via brick-and-mortar locations. For example, when a customer enters a store, accordingly, refusing to sell them a product if it is predicted that the customer would assign a low user rating to a product would generally be a negative action which is not rewarded. Contrary to the negative reward of losing a sale, during retraining neural network 124 may learn not to associate a certain subset of users with any of the stored mappings, and thereby learn not sell such customers a mattress.
  • neural network 124 may learn to ignore certain or all requests from certain groups of consumers when selling them a mattress. The subsets of consumers neural network
  • mappings of mattresses are described generally, it is respectfully submitted that mappings may specifically include mappings of foam springs (for example, as shown in third layer 320 of FIG. 3B) or mappings that include one or more layers.
  • retraining neural network 124 may utilize user supplied data in response to a user(s)’ survey.
  • the consumer may be supplied with the survey after having used his/her newly created customized matters (e.g., after block 710 of FIG. 7).
  • a survey may request information such as the following from consumers: (A) In comparison to previous mattress, did your newly created customized mattress improve overall comfort, sleep quality and does user feel supported? (B) Did your newly created customized mattress match user expectations on the firmness rating that you supplied? (C) If the left and the right sides of your newly created customized mattress included configurations that had different spring positions (and layers), is the middle of the mattress suitable for your needs/if there is a bridge of springs separating the left and the right sides, are both users happy with the mattress? (D) Are there any discomfort points that you’re experiencing (shoulders, hips, legs/knees, etc.)?
  • the consumer may input responses by selection of predetermined responses, input of textual responses, input of a scaled numerical response (e.g., a selection of a number from 0 to 10, etc.) or by other means.
  • the responses may be transmitted from user device 102 to central server system 104 via network 105, as depicted in FIG. 1 A.
  • block 716 may be recursive, that is, retraining of neural network 124 may be continuous and/or updated sporadically, as new as additional information is received (e.g., as additional survey response are returned in block 714).
  • the retraining may be performed dependent upon receipt of such additional information.
  • the retraining may be performed on a predetermined scheduled basis.
  • Other implementations for retraining may exist.
  • the recursive nature of block 716 may be dependent on a variable (having a temporal dependency, etc.) and may be repetitive. Details regarding retraining are described herein with respect to
  • FIG. 8 is a block diagram 800 illustrating an exemplary neural network that may be used to anticipate a user’s tactile experience.
  • Neural network 124 depicted in FIG. 1A may be the same or similar to or differ from neural network 124 depicted in FIG. 8.
  • the implementation of neural network 124 depicted in FIG. 8 contains a series of nodes 802 arranged in layers: an input layer 804, a hidden layer 806, and an output layer 808.
  • the nodes of each layer are connected by a series of weighted connections 810.
  • more than one hidden layer may be disposed between input layer 804 and output layer 808. It also possible that no hidden layer is present.
  • neural network 124 transforms the consumer provided input data received at input layer 804 into a mattress code retrievable from output layer 808 via weighted connections 810.
  • neural network 124 Fewer or greater layers and/or fewer or greater nodes than depicted in FIG. 8 may be implemented by neural network 124.
  • neural network 124 may include one or both of fully connected layers and/or layers that are not fully connected.
  • mapping 402 when presented with input data representing a user having a distance between their shoulders and hips is less than 60 cm and having a user preference for soft firmness
  • mapping 406 when presented with input data representing a user having a distance between their shoulders and hips is greater than 60 cm and having a user preference for soft firmness
  • mapping 410 when presented with input data representing a user having a distance between their shoulders and hips is less than 60 cm and having a user preference for a firm firmness
  • mapping 414 when presented with input data representing a user having a distance between their shoulders and hips is less than 60 cm and having a user preference for firm firmness.
  • the neural network will generally comprise an input layer receiving the input data and an output layer specifying at least the mapping.
  • Training the online store to recognize input data patterns as corresponding to predefined and/or derived mattress mappings may be accomplished training a neural network to provide adaptive pattern recognition and derivative product selection using a system architecture 900 depicted in FIG. 9.
  • FIG. 9 illustrates system architecture 900 for training a neural network to produce a customized mattress.
  • System architecture 900 includes the system architecture 100 of FIG. 1 A and description of similar entities depicted by FIG. 1 A apply to those depicted by
  • the system for training a neural network to provide adaptive pattern recognition and/or derivative product selection may be separate from the system architecture of an online store.
  • System architecture 900 includes a survey storage device 912, and a material storage device 914.
  • Survey storage device 912 and/or material storage device 914 may be a memory (e.g., random access memory), a cache, a drive (e.g., a hard drive), a flash drive, a database system, or another type of component or device capable of storing data.
  • Survey storage device 912 and/or material storage device 914 may also include multiple storage components (e.g., multiple drives or multiple databases) that may also span multiple computing devices (e.g., multiple server computers).
  • Training of a neural network is accomplished via a training module 908 of a training server 902.
  • Training server 902 includes a clustering module 904, a scoring module 906, a training module 908, and a training network 910.
  • Training server 902 subjects training of neural network 124 to a training routine, such as the reinforcement learning algorithm depicted in FIG. 10.
  • training network 910 may be a copy of neural network 124 obtained via network 105. If disruption of operation of the online store is tolerable or preferred, training network 910 may be admitted such that training module
  • training server relies upon the operation of clustering module 904 to identify related subsets of costumers, scoring module 906 to assign a score to each cluster based on survey data collected and stored in survey storage device 912, and training module 908 to alter training network 910 to obtain better survey results indicative of improved tactile experiences for future consumers.
  • FIG. 10 is a flow diagram illustrating a method 1000 of a reinforcement learning algorithm.
  • the method 1000 may be performed by processing logic that comprises hardware
  • circuitry e.g., circuitry, dedicated logic, programmable logic, microcode, etc.
  • software e.g., instructions run on a processing device to perform hardware simulation
  • method 1000 may be performed by a central server system (e.g., central server system 104) as shown in FIG. 1A.
  • a central server system e.g., central server system 104
  • a set of mattress mapping classifications of subsets of consumers associated with the various mappings is stored in storage device 110 at block 1004.
  • the classifications may include base classifications comprising relationships between input data and/or generalized consumer proportional dimension data patterns and mappings of mattress that are predicted (e.g., by developers of neural network 124) to provide a favorable tactile experience.
  • classifications may include relationships learned by training neural network 124 either directly or through training network
  • training network 910 acting as a surrogate during previous training.
  • Previous training refers to past training performed to alter neural network 124.
  • training network 910 is taught the classification such that it associates consumer input data with the mattress mapping believed to provide the consumer an optimal tactile experience utilizing a pattern recognition algorithm, such as backpropagation.
  • training network 910 is deployed at block 1008. If training network
  • 910 is a surrogate of network 124, deployment may entail transferring training network 910 via network 105 to central server system 104 to replace neural network 124. If training network
  • deployment at block 1008 may simply entail launching the online store.
  • the clustering algorithm employed by clustering module 904 may comprise at least one connectivity-based clustering, centroid-based clustering, distribution-based clustering, density-based clustering, and/or density-based clustering, and/or any other algorithm enabling respondent customers to be grouped in terms of degree of similarity with respect to input data provided when ordering a mattress.
  • scoring module 906 at block 1012 scores the surveys of each consumer within a subset to determine a survey score for each subset (or cluster).
  • the survey score for a cluster may be average score received all consumers within the cluster, the median score obtained from all consumers within the subset, and/or any other appropriate metric representing the satisfaction of the cluster as a whole.
  • the multidimensional space can be simplified to a two-dimensional drawing, such FIG. 11.
  • FIG. 11 illustrates a two-dimensional representation of an arrangement 1100 of scored clusters of consumers. As can be seen from FIG. 11, each scored cluster of consumers
  • Clusters 1102-1116 are separated from each other by varying distance.
  • arrangement 1100 is two-dimensional, the distance is based on differences in an X value and a Y value, such that clusters having similar X and Y value are close to one another.
  • Training module 908 utilizes the distance and difference in score between two clusters to train training network 910 at block
  • training module 908 begins by determining the distances to the higher scores for each consumer providing a survey. If no clusters are within a predetermined limit, i.e. far away, training module 908 rewards training network 910 for excluding the customer by not selecting a mattress at block 1018. Utilizing a variant of reinforcement learning algorithms, training module 908 determines the value of a reward based on the survey score provided by the consumer. [00167] For example, suppose a consumer named Tom belongs to cluster 1102, which has cluster score of 2 out of 10 (where 10 is the maximum score, and 1 is a minimum score).
  • Not selling Tom a mattress also provides a reward calculated at block 1018 as the difference between a perfect survey score and the cluster score of cluster 1102. Assuming 10 is a perfect survey score and given the cluster score of cluster 1102 is 2, the reward would 8. Other methods of assigning a reward for not selling a mattress may be used, so long as the reward for not selling obtained increases as cluster score decrease. Keeping with the example, the maximum score obtainable is 8, indicating a bigger reward would be obtain by not selling someone like Tom a mattress in the future.
  • the values of the weighted connections are then updated to indicate that the association desired from Tom’s input data is “no sale”. Any algorithm may be used to update the weights according to the desired association, such as backpropagation.
  • training module 908 moves on to the next customer within the training set and determines the distance to a higher score at block 1016 in FIG. 10. If the distance to higher scoring cluster is within a threshold, i.e. close, training module identifies and corrects for consistent tactile insufficiencies at block 1020. In making this correction, tactile module may compare the actions between the cluster of the current customer of the training set and that of the higher scoring close clusters to determine if there is a “better choice available”, and if so, training module 908 rewards training network 910 for changing input data in block
  • training module 908 at block 1022 will reward training network 910 for changing the input data by updating the weighted connections such that the association desired from the input data of a consumer of cluster 1104 is a mattress identical to that sold to the members of cluster 1106. Any algorithm may be used to update the weights according to the desired association, such as backpropagation.
  • 1104 is possibly ignoring a preference of the members of cluster 1104. For instance, assume the members of cluster 1106 all requested a firm mattress and the members of cluster 1104 all requested a soft mattress. Adjusting the weights of training network 910 to provide a firm mattress when a soft mattress is requested is training network 910 to ignore the request made by members of cluster 1104 for a soft mattress.
  • training module 908 When training module 908 reaches a member of cluster 1112, it will determine at block 1016 the distance to the higher scores of clusters 1110 and 1114. Unlike the members of cluster 1112, the members of cluster 1110 and 1114 each reported “good sleep”, and thus have higher scores than the “poor sleep” reported by the members of cluster 1112. As the clusters 1110, 1112, and 1114 are adjacent, the distance to each of higher scoring clusters 1110 and 1114 is within a threshold, i.e. close. Accordingly, training module identifies and corrects for the consistent tactile insufficiency at block 1020. In so doing, training module determines if there is a “better choice available” by looking for at least one difference between the mattresses provided to members of cluster 1112 and the mattress provided to clusters 1110 and 1114. For example, assume the members of clusters
  • training network 910 may have assigned members of both clusters
  • training module 908 corrects for tactile insufficiency at block 1022 by rewarding training network 910 to change the user input data by updating the weighted connections such that the members of cluster 1114 are provided a tall, rather than short, mattress.
  • Cluster 1108 As shown in arrangement 1100, is close to higher scoring clusters 1110 and 1114. Accordingly, when training modules determines the distance to higher scores at block 1016, it will determine the distance to be “close”. It will then determine if a better choice is available by looking for differences between the mattresses provided to the consumers of cluster 1108 and those provided to the customers of clusters 1110 and 1114. Assuming a different mattress was provided to each of clusters 1108, 1110, and 1114, at least two potentially better choices are available.
  • training module 908 will attempt to maximize reward while minimizing work by adjusting the difference in scores between cluster 1108 and cluster 1114 and the differences in scores between clusters 1108 and 1110 by the distance between the respective clusters such that the reward decreases with distance.
  • training module 908 will correct for tactile insufficiency by rewarding training network 910 to change the user input data by updating the weighted connections such that the members of cluster 1108 are provided the mattress given to the customers of cluster 1114.
  • Cluster 1116 within arrangement 1100 represents another tactile insufficiency that may be corrected at block 1020. Having a cluster score of 5, consumers of cluster 1116 are experience decent, but not perfect sleep. Even if members of clusters 1114 received different mattress than the members of clusters 1116, as to make a “better choice available”, the distance between the clusters is such that reward for choosing the better options may be greatly diminished. In such a situation, the maximum reward may be obtained by changing the materials of the mattresses provided to the members of cluster 1116. In making the determination to change materials, and thereby create a derivative mattress mapping, the reward may be determined based on the confidence the change will improve cluster score. For instance, assume the mediocre cluster score of 5 results from several members of cluster 1116 reporting discomfort in similar regions of the body. Further assume the members of cluster
  • Training module 908 may have access to data associating discomfort in the neck with the need for a softer mattress. Training module 908 may search and/or query material storage device for a foam softer than the foam utilized in the mattress delivered to the consumers of cluster 1116. Dependent of the confidence in the data, the reward for changing the mattress mapping to include the softer material would be dependent would decrease with confidence. For instance, if the data is based on correlation between firmness and neck pain, the amount of reward for making the change may decrease with the correlation coefficient between neck pain and firmness.
  • training module 908 rewards training network 910 for changing mapping in block 1024.
  • mappings and new classifications are extracted at block 1030 and stored at block 1004. Similarly, at block 1026 common features of excluded customers are identified. If provided to product development teams, development of new mattress mapping may occur, as indicated by block 1028. Any new mappings and classifications based thereon may be stored at block 1004 in storage device 110. Repeating block 1006, neural network 124 may be trained on the classification as to enable the store to anticipate a future consumer’s tactile experience.
  • Neural network 124 may be contained within or otherwise remote and accessible by central server system 104. Neural network 124 and/or central server system 104 may be trained to retrieve one of the stored mappings from storage device 110 when presented with input data and/or generalized consumer proportional dimension data meeting predefined conditions representing a base classification for the training.
  • Base classifications may include relationships between input data and/or generalized consumer proportional dimension data patterns and mappings of mattress that are predicted (e.g., by developers of neural network 124) to provide a favorable tactile experience.
  • base classifications used to train network 124 may include relationships learned by network 124 during previous training. Previous training refers to past training performed by neural network 124.
  • training neural network 124 for base classification may involve adjusting at least one weight matrix of network 124 such that presenting input data to the input layer of network
  • central server system 104 and/or training server 902 are indicated as performing training of neural network 124, in other implementations, one or more other servers may be used.
  • FIG. 12 illustrates a diagrammatic representation of a machine in the exemplary form of a computer system 1200 within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed.
  • the machine may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, or the Internet.
  • the machine may operate in the capacity of a server or a client machine in client-server network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.
  • the machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a server, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
  • PC personal computer
  • PDA Personal Digital Assistant
  • machine shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
  • the exemplary computer system 1200 includes a processing device (processor)
  • main memory 1204 e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM
  • ROM read-only memory
  • DRAM dynamic random access memory
  • SDRAM synchronous DRAM
  • Rambus DRAM Rambus DRAM
  • RDRAM RDRAM
  • static memory 1206 e.g., flash memory, static random access memory (SRAM), etc.
  • data storage device 1218 which communicate with each other via a bus
  • Processing device 1202 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 1202 may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or processors implementing a combination of instruction sets. The processing device 1202 may also be one or more special- purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 1202 is configured to execute instructions 1226 for performing the operations and steps discussed herein.
  • CISC complex instruction set computing
  • RISC reduced instruction set computing
  • VLIW very long instruction word
  • ASIC application specific integrated circuit
  • FPGA field programmable gate array
  • DSP digital signal processor
  • network processor or the like.
  • the processing device 1202 is configured to execute instructions 1226 for performing the operations
  • the computer system 1200 may further include a network interface device
  • the computer system 1200 also may include a video display unit 1210 (e.g., a liquid crystal display (LCD), a cathode ray tube (CRT), or a touch screen), an alphanumeric input device 1212 (e.g., a keyboard), a cursor control device 1214 (e.g., a mouse), and a signal generation device 1220 (e.g., a speaker).
  • a video display unit 1210 e.g., a liquid crystal display (LCD), a cathode ray tube (CRT), or a touch screen
  • an alphanumeric input device 1212 e.g., a keyboard
  • a cursor control device 1214 e.g., a mouse
  • a signal generation device 1220 e.g., a speaker
  • the data storage device 1218 may include a computer-readable storage medium
  • the instructions 1226 include customized mattress logic
  • computer-readable storage medium 1228 for creating a customized mattress as described above with respect to FIGs. 5, 6 7, 9, and/or 10. While the computer-readable storage medium 1224 is shown in an exemplary implementation to be a single medium, the term “computer-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions.
  • computer-readable storage medium shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present disclosure.
  • computer-readable storage medium shall accordingly be taken to include, but not be limited to, solid-state memories, optical media, and magnetic media.
  • “associating,” “storing,” or the like refer to the actions and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (e.g., electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
  • the disclosure also relates to an apparatus for performing the operations herein.
  • This apparatus may be specially constructed for the required purposes, or it may include a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-
  • ROMs and magnetic-optical disks, read-only memories (ROMs), random access memories
  • RAMs random access memory
  • EPROMs EPROMs
  • EEPROMs electrically erasable programmable read-only memory
  • magnetic or optical cards or any type of media suitable for storing electronic instructions.
  • exemplary is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, use of the words “example” or “exemplary” is intended to present concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “of’ rather than an exclusive “or”. That is, unless specified otherwise, or clear from context,
  • X includes A or B” is intended to mean any of the natural inclusive permutations. That is, if
  • X includes A; X includes B; or X includes both A and B, then “X includes A or B” is satisfied under any of the foregoing instances.
  • the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form.
  • use of the term “an embodiment” or “one embodiment” or “an implementation” or “one implementation” throughout is not intended to mean the same embodiment or implementation unless described as such.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A customized mattress may be provided to a user employing a user device. The user is provided with customization options for the mattress. In response to receiving the customization options, the user device sends user input data to a central server system. In addition, generalized consumer proportional dimension data for the user is generated by the user or by an image generation server. Based on the input data and the generalized consumer proportional dimension data, placement of various types of foam springs in ergonomic contoured configuration areas is determined. Each of types of foam springs have a corresponding strength and density rating. The central server system retrieves a mapping of the mattress corresponding to the placement and transmits mapping to the user device. The user may then purchase the customized mattress corresponding to the mapping.

Description

CUSTOMIZED MATTRESS
TECHNICAL FIELD
[0001] This disclosure relates to enabling online tactile impressions of a product, such as customized mattresses and, in particular, to a method and system that enables a tactile impression to be determined when shopping online for a personalized product, such as a customized mattress including a variety of foam springs arranged in ergonomic contoured configuration areas.
BACKGROUND
[0002] Built upon what a consumer can see on a computer monitor, online stores entice purchasing decisions with imagery, star ratings, and posted consumer reviews. Looking good in the consumer’s home, however, may be one function of a product. Many products, such as furniture, must also feel comfortable. Shopping online and selecting a prepackaged furniture does not allow a consumer the opportunity to feel furniture, such as a mattress, and determine if the mattress would be comfortable. Providing visual, rather than tactile, experiences, a consumer wanting a comfortable mattress leaves the online store and enters a brick-and-mortar store. Within the brick-and-mortar store, the consumer may typically determine if a mattress is comfortable by physically interacting with it (i.e., feeling the firmness of the mattress by touching it or laying down on it). After finding a comfortable mattress, the consumer chooses between purchasing the furniture at the physical store or returning home (or using a mobile device in the parking lot) to order it online.
[0003] In some situations, the online retailer may operate the brick-and-mortar store.
Being one in the same, a sale is not lost when the consumer decides to purchase the product at the store after physically interacting with it. Many online stores, however, have limited physical locations, or none. Such predominantly online retailers must entice the consumer back online by offering a lower price than the brick-and-mortar retailer. Having to rely on discounts to offset the inability to provide tactile impressions, predominantly online retailers earn less with each sale. Predominantly online retailer are thus disadvantaged in the sale of furniture, such as mattresses, by the inability of the internet to provide tactile experiences.
SUMMARY
[0004] Anticipating a consumer’s tactile experience utilizing generalized proportion dimension data of the consumer and/or preferences of the consumer as input for static and/or adaptive pattern recognition algorithms, the systems and methods presented herein overcome the technical inability of the internet to provide tactile experiences.
[0005] The following is a simplified summary of the disclosure in order to provide a basic understanding of some aspects of the disclosure. This summary is not an extensive overview of the disclosure. It is intended to neither identify key or critical elements of the disclosure, nor delineate any scope of the particular implementations of the disclosure or any scope of the claims. Its sole purpose is to present some concepts of the disclosure in a simplified form as a prelude to the more detailed description that is presented later.
[0006] Implementations of the present disclosure may include a method of customizing a mattress. A central server system receives a request to create a mattress from a user device.
A plurality of customization options for the mattress are transmitted to the user device. The plurality of customization options are configured to be depicted on a display of the user device.
In response to transmitting the plurality of customization options, input data from the user device is received. The input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user. Generalized consumer proportional dimension data generated by an image generation server is received. Based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured confi guration areas is determined. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating. A first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. A mapping of the mattress corresponding to the placement is retrieved. The mapping is transmitted to the user device.
[0007] An implementation includes a method of customizing a mattress. A central server system receives a request to create a mattress from a user device. A plurality of customization options for the mattress are transmitted to the user device. The plurality of customization options are confi gured to be depicted on a display of the user device. In response to transmitting the plurality of customization options, input data from the user device is received. Tire input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user. Generalized consumer proportional dimension data is received from the user device. Based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas is received. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating. A first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. A mapping of the mattress corresponding to the placement is retrieved. The mapping is transmitted to the user device. [0008] In an implementation, a customized mattress production system includes a mattress production device, a storage device, and a central server system comprising a first interface and a second interface. The first interface is configured to communicate with a user device. The first interface transmits a plurality of customization options for a mattress to the user device. The plurality of customization options are configured to be depicted on a display of the user device. The second interface is configured to receive generalized consumer proportional dimension data of a body of a user and input data provided in view of the plurality of customization options. The input data comprises at least one of a body weight measurement of the user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user. The storage device stores a plurality of ergonomic contoured configuration areas.
Based on the input data and the generalized consumer proportional dimension data, the second interface communicates with the storage device to determine placement of a plurality of a first type of foam springs, a second type of foam springs and a thir d type of foam springs. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating. The second interface corresponds with the storage device to retrieve a mapping comprising a first layer of tiie mattress and a second layer of the mattress. The second layer comprises the first type of foam springs, the second type of foam springs and the third type of foam springs to be placed within the second layer of the mattress in corresponding ones of the plurality of ergonomic contoured configuration areas.
The mapping comprises a plurality of a fourth type of foam springs arranged in one of the plurality of ergonomic contoured configuration areas along a periphery of the second layer.
The second interface transmits the mapping to the mattress production device.
BRIEF DESCRIPTION OF THE DRAWINGS [0009] The present disclosure is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings.
[0010] FIG. 1A illustrates an example system architecture for a customized mattress production system in accordance with an implementation of the present disclosure;
[0011] FIG. 1B illustrates a block diagram depicting components for obtaining generalized consumer proportional dimension data in accordance with an implementation of the present disclosure;
[0012] FIGs. 2A-2D illustrate exemplary options provided to a user device in accordance with an implementation of the present disclosure;
[0013] FIG. 3A illustrates an exemplary mattress code in accordance with an implementation of the present disclosure;
[0014] FIG. 3B illustrates an exemplary mattress layer architecture in accordance with an implementation of the present disclosure;
[0015] FIGs. 4A-4D illustrate exemplary mappings in accordance with implementations of the present disclosure;
[0016] FIG. 5 is a flow diagram illustrating a method of customizing a mattress using an image generation server in accordance with an implementation of the present disclosure;
[0017] FIG. 6 is a flow diagram illustrating a method of customizing a mattress using generalized consumer proportional dimension data provided by the user device in accordance with an implementation of the present disclosure;
[0018] FIG. 7 is a flow diagram illustrating a method of providing a customized mattress utilizing a trained neural network in accordance with an implementation of the present disclosure; [0019] FIG. 8 is a block diagram illustrating an exemplary neural network that may be used to anticipate a user’s tactile experience in accordance with an implementation of the present disclosure;
[0020] FIG. 9 illustrates an example system architecture for training a neural network to produce a customized mattress in accordance with an implementation of the present disclosure;
[0021] FIG. 10 is a flow diagram illustrating a method of a reinforcement learning algorithm in accordance with an implementation of the present disclosure;
[0022] FIG. 11 illustrates a two-dimensional representation of an arrangement of scored clusters of consumers in accordance with an implementation of the present disclosure; and
[0023] FIG. 12 is a block diagram illustrating an exemplary computer system, according to some implementations.
DETAILED DESCRIPTION
[0024] Aspects and implementations of the disclosure are directed towards a customized mattress. Specifically, the customized mattress is provided to a user by a system that anticipates the user’s tactile experience. The user may be provided with customization options for the mattress. In response to receiving the customization options, an optimized customized mattress is provided to the user. The mattress as generated based on a customized mapping of foam springs in view of the user’s input. Additionally, the system may instead predict a mapping to better suit the user’s needs and the mapping may instead be provided to the user.
[0025] Built around what can be displayed on a monitor, online stores sell prepackaged furniture, such as mattresses, based on visual, rather than tactile impressions. While visual appearance may be important, it is important that furniture, especially mattresses, be comfortable. A consumer (also referred to interchangeably as a user and/or a customer) may typically determine if a mattress, or other piece of furniture, is comfortable by physically interacting with it (i.e., feeling the firmness of the mattress by touching it or laying down on it). Such an interaction is not possible with images alone. It also may not be possible from visuals alone to determine if a mattress needs to be customized to provide the desired comfort as determined by the consumer.
[0026] For instance, from visuals alone, a consumer may not realize an optimal configuration and/or material for various types of foam layers and/or springs to be placed within a mattress to better suit their needs. The visual focus of online stores, accordingly, fails to provide the tactile experiences necessary to select and/or customized a mattress or other furniture.
[0027] Correcting for the lack of tactile feel can be accomplished by anticipating a consumer’s tactile experience utilizing generalized proportion dimension data of the consumer and/or preferences of the consumer as input for static and/or adaptive pattern recognition algorithms. The systems and methods of the present disclosure obtains a consumer’s input regarding various body measurements, sleep position (i.e., side, back, front), consumer’s dimensions, and/or personal preferences to customize a mattress the consumer will find comfortable. In other words, the present disclosure includes a method that provides an online configurable customized mattress by “feeling” for the consumer.
[0028] Aspects of the present disclosure provide an online store utilizing generalized proportion dimension data of the consumer and/or consumer preferences to select an optimal customized mattress by anticipating consumer tactile experiences. A consumer may visit the online store via a website or through the use an application (app). The consumer may provide input data comprising generalized proportion dimension data of the consumer and/or preferences in response to a query sent via the website and/or app. The consumer’s preferences and/or the consumers generalized consumer proportion dimension data (also referred to as
‘dimensions”) may be used in order to create a unique and/or customized mattress the consumer will find comfortable. The unique and/or customized mattress may comprise one of set of predefined spring mappings recognized by the online store as matching the pattern of consumer input data. The spring mapping may be a derivation created by the online store of one or more initial predefined spring mappings. Accordingly, the spring mappings of the unique and/or customized mattress may be a based on static and/or adaptive pattern recognition.
[0029] FIG. 1A illustrates an example system architecture 100 for a customized mattress production system. System architecture 100 may be used by an online store. The system architecture 100 includes a user device 102, a network 105, a central server system 104, a storage device 110, a mattress production device 112, and an image generation server 114.
System architecture 100 unifies a pathway for transfers of data and/or instructions between the devices included therein. Through a series of transfers of data and/or instructions between devices, system architecture 100 may carry out one or more functions.
[0030] Devices included in system architecture 100 may transfer data and/or instructions to other devices included in system architecture 100 or to devices external thereto through network 105. For example, user device 102 may transfer data to central server system
104 through network 105. In one implementation, network 105 may include a public network
(e.g., the Internet), a private network (e.g., a local area network (LAN) or wide area network
(WAN)), a wired network (e.g., Ethernet network), a wireless network (e.g., an 802.11 network or a Wi-Fi network), a cellular network (e.g., a Long Term Evolution (LTE) network), routers, hubs, switches, server computers, and/or a combination thereof.
[0031] In one implementation, storage device 110 may be a memory (e.g., random access memory), a cache, a drive (e.g., a hard drive), a flash drive, a database system, or another type of component or device capable of storing data. Storage device 110 may also include multiple storage components (e.g., multiple drives or multiple databases) that may also span multiple computing devices (e.g., multiple server computers). Storage device 110 may store multiple mappings of mattresses. The mappings of mattresses stored within storage device 110 may include one or more predefined mappings of foam springs and/or one or more derivations created by the online store of one or more of initial predefined spring mappings. The spring mappings within storage device 110 may be arranged in ergonomic contoured configuration areas. A contoured configuration area may include one or a cluster of the same foam spring types.
[0032] User device 102 may include computing devices such as personal computers
(PCs), laptops, mobile phones, smart phones, tablet computers, netbook computers etc. User device 102 includes a display device 116, a camera 120, and a browser 122.
[0033] Central server system 104 includes a first interface 106, a second interface 108, and a neural network 124. Although first interface 106, second interface 108, and neural network 124 is depicted as being internal to central server system 104, in other implementations, one or more of these may be external to central server system 104 and may be remotely accessible by central server system 104. Details regarding neural network 124 are descried herein with respect to FIGs. 7-9.
[0034] In an implementation, interactions between user device 102 and central server system 104 and/or image generation server 114 may be through browser 122. Additionally, first interface 106 and/or second interface 108 may interact with user device 102 through browser 122. For example, an app or web-based application may run within browser 122 to allow a consumer employing user device 102 to order a customized mattress created by an online store. User device 102 may not have to install an app and may access the online store to create the customized mattress website through browser 122. In other implementations, user device 102 may download an app to order the customized mattress. Browser 122 or an app may allow a consumer to enter input data utilized by the online store to anticipate the consumer’s tactile experience when creating a customized mattress, regardless of whether a browser program running on browser 122 is a stand-alone program or an embedded program, such as a browser program included as part of an operating system, or an installed app.
[0035] Although a single user device is depicted, in other implementations, two or more user devices may be used. In general, functions described in one implementation as being performed by user device 102 can also be performed on other user devices in other implementations if appropriate. In addition, the functionality attributed to a particular component can be performed by different or multiple components operating together.
[0036] Central server system 104 includes a first interface 106 and a second interface
108. Central server system 104 may be one or more servers and/or computing devices (such as a rackmount server, a router computer, a server computer, a personal computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, etc.), data stores (e.g., hard disks, memories, databases), networks, software components, and/or hardware components that may be used produce a customized mattress. For example, central server system 104 may allow the online store to anticipate the consumer’s tactile experience when creating a customized mattress for the consumer and output a mapping of the best mattress to mattress production device 112.
[0037] Although central server system 104 is depicted as including first interface 106 and second interface 108, in other implementations, any number of interfaces or no interfaces at all my used. First interface 106 and/or second interface 108 may be an application programming interface (API). An API defines interactions between software application(s) and/or mixed hardware-software intermediaries. An API may gather data and/or communicate unidirectionally or bidirectionally with other applications. [0038] First interface 106 and second interface 108 may communicate with each other and with user device 102, image generation server 114 and/or any other applications and/or devices. In an implementation, first interface 106 may communicate with user device 102 and may transmit and/or receive data from user device 102. Second interface 108 may communicate with image generation server 114 and/or user device 102 and may transmit and/or receive data from image generation server 114 and/or user device 102, respectively.
[0039] A consumer employing user device 102 who wishes to purchase a mattress customized for his/her comfort by the online store may visit a website and/or an app. In order to anticipate the consumers tactile experience, central server system 104 may provide questions to the consumer via user device 102. The consumer may view, via display device 116, multiple customization options for the mattress provided by first interface 106 of central server system
104. The consumer may view the multiple customization options on a webpage of a browser, an app, etc.
[0040] The consumer may provide input data via user device 102 in response to the multiple customization options to second interface 108 of central server system 104. In addition, the consumer may provide generalized consumer proportion dimension data based on the consumer’s dimensions to second interface 108 of central server system 104 via user device
102 and/or via image generation server 114. The generalized consumer proportion dimension data may include one or more of the following: a distance between hips and shoulders of the consumer, a height of the consumer, weight of the consumer, a shoulder width, a hip circumference, etc. Other distances/measurements may also be included. The generalized consumer proportion dimension data may be determined by image generation server 114 based on photograph(s) obtained by image generation server 114 and/or based on information provided by the consumer via user device 102. [0041] In implementations of the disclosure, a “consumer” or a “user” may be represented as a single individual. However, other implementations of the disclosure encompass a “consumer” or a “user” being an entity controlled by a set of consumers and/or an automated source.
[0042] Image generation server 114 may be and/or include one or more computing devices (e.g., servers), storage devices, networks, software components, and/or hardware components that may be used to allow consumers to provide photographs or other media using one or more mobile devices (e.g., phones, tablet computers, laptop computers, wearable computing devices, etc.) and/or any other suitable devices. For example, image generation server 114 may communicate with user device 102 via network 105 using telephony communication, Multimedia Message Service (MMS) messaging, or another app to obtain or otherwise scan a photograph. Image generation server 114 may allow a consumer employing user device 102 to upload or otherwise capture a live photograph using the camera of user device 102.
[0043] In situations in which the systems discussed here collect personal information about consumers, or may make use of personal information, the consumers may be provided with an opportunity to control central server system 104 and/or image generation server 114 collects consumer information. In addition, certain data may be treated in one or more ways before it is stored or used, so that personally identifiable information is removed. For example, a consumer’s identity and/or photograph may be treated so that no personally identifiable information can be determined for the consumer, or a consumer’s geographic location may be generalized where location information is obtained (such as to a city, ZIP code, or state level), so that a particular location of a consumer cannot be determined. Thus, the consumer may have control over how information is collected about the consumer and used by image generation server 114, central server system 104, and/or any other component of the system architecture 100.
[0044] In an implementation, image generation server 114 may assign an identification
(ID) to a consumer employing user device 102. Upon capturing or otherwise obtaining photograph(s) of the consumer and calculating relevant information from the photograph, image generation server 114 may associate the ID of the consumer with the information and discard the photograph. Therefore, image generation server 114 may not store the photograph and expunge the photograph upon calculating the relevant information and thus, the photograph is destroyed and cannot be distributed.
[0045] Based on input data provided by the consumer, including generalized consumer proportional dimension data which may be provided by the consumer and/or by image generation server 114 (which obtains the generalized consumer proportional dimension data from photograph(s)), central server system 104 may obtain a mapping of the customized mattress from storage device 110. A consumer employing user device 102 may view the mapping on display device 116 and select to order the customized mattress based on the mapping. The order for the customized mattress is provided by central server system 104 to mattress production device 112 via network 105. Details regarding the generalized consumer proportional data and how it is obtained are described herein below with respect to FIG. 1B
[0046] The mapping includes various layers of the mattress. The mapping of one (or more) layer(s) of the mattress include(s) various types of foam springs placed in corresponding ones of multiple ergonomic contoured configuration areas. Each type foam spring may have a unique corresponding strength/firmness and/or density rating. While firmness may be quantified using various measurements, such as indentation force deflections, it may also be qualified. Examples of qualified firmness include super soft, soft, medium, hard, super hard, etc. Density ratings refer mass to per unit volume, and may be ranked numerically (from most dense to lease dense or vice versa) or in other ways.
[0047] Mattress production device 112 may then produce the customized mattress.
[0048] Suppose now that a consumer named John wishes to order a customized mattress. John may employ user device 102 to access an online store via a website and/or a mobile phone application (app) to view various customization options for the customized mattress. The customization options are sent by first interface 106 of central server system 104 to user device 102 so that John can view them on display device 116. Exemplary customization options are described in the FIGs. 2A-2D below.
[0049] User device 102 may capture John’s responses to the customization options and the responses may be transferred from user device 102 to second interface 108 of central server system 104 via network 105. Such responses are referred to as input data. The input data may include one or more of the following: John’s body weight measurement, a total number of consumers (including John) utilizing the mattress, a mattress size, John’s sleep position, John’s height measurement, a location of pain experienced by the John, John’s age, and/or John’s mattress firmness preference.
[0050] After John selects his options, John may be provided with a query to provide dimensional measurements relating to his body. Examples of these measurements include a distance between his hips and shoulders of the consumer, his height, his shoulder width, or his hip circumference. Such measurements are referred to as John’s consumer proportional dimension data. The request for the generalized consumer proportional dimension data may be submitted by first interface 106 of central server system 104 to be displayed on display device 116 of user device 102.
[0051] In response to the request, John may input the generalized consumer proportional dimension data manually onto the website and/or app and second interface 108 of central server system 104 may receive the consumer proportional dimension data. In other implementations, the generalized consumer proportional dimension data may be provided to central server system 104 by first interface 106 or by another interface or software program.
[0052] In an alternative implementation, John may wish to use a photo scanning app to determine his consumer proportional dimension data. John may access the photo scanning app which would instruct John to use camera 120 to take one or more photographs. The photo scanning app may be controlled by image generation server 114, central server system 104, and/or another device(s), server(s), and/or system(s). The photo scanning app would receive the photograph(s) captured by camera 120 and transmitted via user device 102. The photo scanning app may assign an identification (ID) or code to the photograph(s) in order to associate the photograph(s) with John. In an implementation, the ID or code may be anonymous and/or securely transferred (e.g., using public key/private key infrastructure, etc.) so that John’s personal information is not transferred. In an implementation, the photo scanning app may determine the dimensions of the consumer and only the dimensions may be transferred by the photo scanning app to the central server.
[0053] Once image generation server 114 receives the photograph(s), image generation server 114 scans the photograph(s) to determine the consumer proportional dimension data.
Image generation server 114 may use any of a variety of methods and/or algorithms in order to obtain the consumer proportional dimension data. Image generation server 114 then transmits the generalized consumer proportional dimension data to second interface 108 of central server system 104 (and/or first interface 106 and/or another device(s), server(s), and/or system(s)) via network 105 and the photograph(s) are destroyed and not cached. The generalized consumer proportional dimension data may be transferred with the ID or code so central server system
104 may properly associate the ID or code with John. [0054] Central server system 104 may then determine the optimal mattress for John based on the input data and the generalized consumer proportional dimension data. Central server system 104 may create a mattress code such as a stock-keeping unit (SKU), a QR code, etc., that contains data which corresponds to the mattress providing John with an optimal tactile experience. Details regarding this code are descried herein with respect to FIG. 3A.
[0055] Central server system 104 may communicate with storage device 110, via network 105, in order to obtain a mapping of the mattress providing John the optimal tactile experience. Specifically, second interface 108 (and/or first interface 106 and/or another device(s), server(s), and/or system(s)) may correspond with storage device 110.
[0056] Storage device 110 may store multiple foam spring configurations and/or multiple ergonomic contoured configuration areas (described in detail herein below) for mattresses. In one example, storage device 110 may store one or more databases of mattress codes.
[0057] Second interface 108 may communicate with the storage device 110 to determine placement of types of foam springs.
[0058] In an implementation, John’s mapping may include multiple layers. Details regarding mattress layers are described herein with respect to FIG. 3B. In one example, the first layer of the mattress in the mapping may be a layer of foam. The second layer may include ergonomic contoured configuration areas where each ergonomic contoured configuration area contains one (or more) types of foam springs. The mapping may also include a type of foam spring of an ergonomic contoured configuration area that is placed along a periphery of the second layer.
[0059] Once central server system 104 obtains the mapping, first interface 106 (and/or second interface 108 and/or another device(s), server(s), and/or system(s)) of central server system
104 may provide the mapping for display to John on display device 116 of user device 102. In an implementation, central server system 104 may format the mapping to provide an aesthetically appealing graphic(s) to user device 102. Should John wish to purchase the mattress in view of the mapping, John may do so by adding the mattress mapping to his shopping cart and checking out using any electronic transaction method.
[0060] However, should John wish to change any of the input data he provided in response to the customization options, John may go back to the customization options and modify his response(s). Central server system 104 may obtain a modification to the mapping (or retrieve a new mapping from storage device 110) in view of John’s changes. The modifications may be to modify any one or more ergonomic contoured configuration areas including modifying the placement of the foam springs. John may then check out of his shopping cart containing the modification to the mapping.
[0061] Central server system 104 may thereafter receive a confirmation of John’s purchase upon a successful checkout. For example, a payment processing device may transmit a payment confirmation to central server system 104. In response to receipt of the confirmation, the second interface transmits the mapping (or the modification to the mapping, if applicable) to mattress production device 112. Mattress production device 112 may use the mapping to build John’s customized mattress.
[0062] FIGs. 2A-2D illustrate exemplary user interfaces displaying options. FIG. 2A illustrates exemplary user interfaces 200. User interfaces 200 may be depicted on display device 116 of user device 102. User interfaces 200 may be generated by first interface 106
(and/or second interface 108 and/or another device(s), server(s), and/or system(s)) of central server system 104 and transmitted to user device 102 via network 105.
[0063] An interface 202 requests a user to enter his/her name. An interface 204 requests that a user enter a mattress size. An interface 206 requests that a user provide a number of users that that will utilize the mattress. An interface 208 requests information from the user regarding what side of the bed he/she sleeps on. An interface 210 requests that a user provide his/her favorite sleep position. An interface 212 displays an input of “I don’t know” received from a user employing user device 102. An interface 214 displays an input provided by the user who selected “side”, “back”, and “front” in response to the question posed in interface
210.
[0064] Referring now to FIG. 2B, user interfaces 216 are depicted. An interface 218 requests that a user provide impact of his/her sleep. An interface 220 further depicts additional impacts selectable by the user. An interface 222 requests that a user provide a comfort level preference. An interface 224 requests that a user provide his/her gender. An interface 226 request that a user provide his/her height. An interface 228 depicts a selection from a user to toggle the measurement selection from the imperial system to the metric system.
[0065] Referring now to FIG. 2C, user interfaces 230 are depicted. An interface 232 requests that the user selects the option to take photo(s) via the photo scanning app. An interface 234 requests that a user select how he/she wishes to take the photograph(s) (e.g., by either asking someone to help the user take photos or use the artificial intelligence (Al) assistant. An interface 236 and an interface 238 provides guidance for taking pictures in a front view and a side view, respectively. Based on the photograph(s), image generation server 114 can generate generalized consumer proportional dimension data for the user.
[0066] Referring now to FIG. 2D, user interfaces 240 are depicted. Interfaces 240 allow a user employing user device 102 to manually input generalized consumer proportional dimension data. An interface 242 requests that a user input his/her shoulder width. An interface 244 requests that a user input his/her hip circumference. An interface 246 requests that a user input his shoulder to hip distance. Other measurements may be requested to aide in creation of an optimized customized mattress for the user.
[0067] Other interfaces may provide additional customization options to a user employing user device 102. [0068] FIG. 3A illustrates an exemplary mattress code 300. In an implementation, mattress code 300 may be generated by central server system 104 in response to receiving input data from user device 102. The input data is responsive to customization options provided by central server system 104. Exemplary customization options are shown in FIGS. 2A-2D. In other implementations, mattress code 300 may be generated by another device(s), server(s), interface(s) and/or system(s)).
[0069] Mattress code 300 includes a first segment 302, a second segment 304, a third segment 306, a fourth segment 308, a fifth segment 310, and a six segment. All the segments combine to create mattress code 300 corresponding to a customized user mattress. Fewer or greater segments than depicted may be used. One or more of the segments may be left blank and not contain any digits. Moreover, any combination of alphanumerical numbers, symbols, etc. may be contained in the segments.
[0070] First segment 302 contains the digits 9019. First segment 302 may be a code that corresponds to a user’s selection of a mattress size. In the above example, John may wish to order a double-sized mattress. When John provides input data indicative of a double-sized mattress in response to the customization option requesting a mattress size, user device 102 may transmit the input data to central server system 104 via second interface 108. Upon receiving the input data, central server system 104 may encode the selection for a double-sized mattress as 9019.
[0071] In some implementations, a user may select a mattress size as single (e.g., twin), double (e.g., full), queen, king, super king, California king or another size. An input data selection of a double size mattress, a king size mattress, and super king size mattress may correspond to the following corresponded segmented digits, respectively: 13519, 15020, and
18020. [0072] Second segment 304 contains the digit 1. Second segment 304 may be a code that corresponds to a user’s selection of a number of users that will utilize the mattress.
Referring again to the example above, John may wish to indicate that a single user will utilize the mattress. When John provides input data indicative of a single user in response to the customization option requesting a number of users, user device 102 may transmit the input data to central server system 104 via second interface 108. Upon receiving the input data, central server system 104 may encode the selection for a single user as 1. Should the input data indicate that two users will utilize the mattress, second segment 304 may contain the digit 2.
[0073] Third segment 306 contains L. Third segment 306 may be a code that corresponds to a user’s selection of a side of the bed the user sleeps on. Referring again to the example above, John may wish to indicate that he prefers to sleep on the left side of the bed.
When John provides input data indicative of a left side preference in response to the customization option requesting which side of the bed John sleeps on, user device 102 may transmit the input data to central server system 104 via second interface 108. Upon receiving the input data, central server system 104 may encode the selection for the left side of the bed as L. Should the input data indicate that the user selects that he/she sleeps on the right side of the bed, third segment 306 may contain the digit R.
[0074] Fourth segment 308 contains S. Fourth segment 308 may be a code that corresponds to a user’s selection of a comfort level of a user in terms of a firmness scale of the mattress. Referring again to the example above, John may wish to indicate that his comfort level is the softest. When John provides input data indicative of a softest comfort level selection in response to the customization option requesting which comfort level John prefers, user device 102 may transmit the input data to central server system 104 via second interface
108. Upon receiving the input data, central server system 104 may encode the selection for the comfort level as S. A comfort indicator may be provided on an interface to the user using a sliding feature, as depicted in interface 222. Should the input data indicate that the user selects a medium comfort level, fourth segment 308 may contain M; and if the user selects a firmest comfort level, fourth segment 308 may contain F.
[0075] Fifth segment 310 contains B. Fifth segment 310 may be a code that corresponds to a user’s selection of a sleep position. Referring again to the example above,
John may wish to indicate that his sleep position is back. When John provides input data indicative of a back position in response to the customization option requesting which position
John prefers, user device 102 may transmit the input data to central server system 104 via second interface 108. Upon receiving the input data, central server system 104 may encode the selection for the back position as B. Should the input data indicate that the user prefers a front position, back position, back and front, or the user selects the option “I don’t know,” fifth segment 310 may contain B; and if the user selects all the positions, side, side and back or side and front, fifth segment 310 may contain S.
[0076] Sixth segment 312 contains T. Sixth segment 312 may be a code that corresponds to a user’ s height. Referring again to the example above, John may wish to provide his height (and it may be determined that his height is tall, i.e., the distance between his shoulder and hips is above 60 cm and thus, his height exceeds a certain length, etc.). Otherwise,
John may simply input the distance between his shoulder and hips or other measurement as input data. In an alternative implementation, information regarding height may be determined in view of generalized consumer proportional dimension data that is determined in view of photograph(s) of the user.
[0077] In an implementation, edges of a mattress may have a contoured configuration area that contains firmer springs to allow for users to sit on the edges of mattress with support.
[0078] When John (or image generation server 114 or central server system 104) provides input data indicative of a tall height (i.e., the distance between the user’s shoulder and hips being above 60 cm), user device 102 and/or image generation server 114 may transmit the input data to central server system 104 via second interface 108. Otherwise, central server system 104 may determine that the user is tall. Upon receiving the input data, central server system 104 may encode the selection for a tall height as T. Should the input data and/or the generalized consumer proportional dimension data indicate a short selection/determination
(i.e., the distance between the user’s shoulder and hips being below 60 cm), sixth segment 312 may contain S or sixth segment 312 may be left blank.
[0079] After mattress code 300 is generated, one or more associated mappings stored by storage device 110 can be obtained by central server system.
[0080] FIG. 3B illustrates an exemplary mattress layer architecture 314. Mattress layer architecture 314 contains four layers, however, fewer or greater layers than depicted may be used. A first layer 316 may be a memory foam layer. A second layer 318 may be a foam layer that can be customized by the online store upon based on anticipated user tactile experience.
Second layer 318 may contain a soft memory foam, a soft medium memory foam, a medium super soft foam, a medium firm super soft foam, or a firm polyurethane foam. In the depicted implementation, second layer 318 contains two separate types of layers of foams (one for a user utilizing a left side of the mattress and another for a user utilizing a right side of the mattress). However, more or less types of foams than depicted may be used. Other types of foams of materials may be used.
[0081] A third layer 320 may be constructed based on the mapping of the customized user mattress. Exemplary mappings are described below with respect to FIGS. 4A-4D. Third layer 320 is completely encased by a fourth layer 322. However, other arrangements may be used. Third layer 320 be constructed based on core options indicated by a corresponding mapping. For example, third layer 320 may be constructed for a user based on the following designations: short and soft, short and firm, tall and soft, or tall and firm. These designations each include a user’s height (where short indicates that the distance between a user’s shoulder and hips is below 60 cm and tall indicates that distance between a user’s shoulder and hips is above 60 cm). Other designations and combinations may be used.
[0082] Although FIG. 3B depicts exemplary dimensions of the layers, other dimensions may be used. Mattress layer architecture 314 will vary based on the mattress size and the mapping of the customized mattress created by a user. Therefore, mattress layer architecture 314 may be stored by storage device 110 in a database along with mappings.
Additionally, mattress layer architecture 314 may be obtained by central server system 104 and/or mattress production device 112 in order to create a mattress.
[0083] Although foam layers and/or foam springs are described, in other implementations, other material of layers, metal springs, other springs, etc. may be used. In yet other implementations, layers of air may be placed in the mattress layer architecture. The air may be pumped into designated layers and the amount of air may be controlled by a user using a remote control, a mobile device having an app, or other device. One or more of the layers of the mattress may include sensors.
[0084] FIGs. 4A-4D illustrate exemplary mappings. FIG. 4A illustrates single user mappings 400. Mappings 400 may be stored in storage device 110 as depicted in FIG. 1A.
Mappings include a layout of contoured configuration areas. Furthermore, each contoured configuration area may include one or more number of foam springs and/or one or more types of foam springs. For example, the following foam springs are depicted: foam A, foam B, foam
C, foam D, foam E, and foam F. However, more or less types of foam springs may be used.
In an implementation, the types of foams arranged from greatest strength and density rating (or firmness) to lowest corresponding strength and density rating are as follows: foam E, foam D, foam C, foam A, foam B. In other words, a foam having a greater strength and density rating would be firmer than one having a lesser strength and density rating. [0085] A mapping 402 may correspond to a designation of short and soft. A table 404 provides a key of mapping 402. For example, row 1 of mapping 402 includes 17 foam D springs and 17 foam E springs.
[0086] A mapping 406 may correspond to a designation of tall and soft. A table 408 provides a key of mapping 406.
[0087] A mapping 410 may correspond to a designation of short and firm. A table 412 provides a key of mapping 410.
[0088] A mapping 414 may correspond to a designation of tall and firm. A table 416 provides a key of mapping 414. Other combinations of mappings and/or charts than depicted may be used. Furthermore, other designations than depicted may be used. Additionally, tables
404, 408, 412, and/or 416 may be stored in storage device 110 along with mapping 402, mapping 406, mapping 410, and/or mapping 414, respectively, and may be obtained by central server system 104 and/or mattress production device 112 in order to create a mattress.
Mappings, tables, and/or mattress layer architectures may be stored within database(s) of storage device 110 or elsewhere and may be accessible by central server system 104 and/or mattress production device 112.
[0089] FIG. 4B illustrates double (or two) user mappings 420. Mappings 420 may be stored in storage device 110 as depicted in FIG. 1A. A mapping 422 includes a layout of contoured configuration areas. Mapping 422 may correspond to a designation of short and soft on the left side and tall and firm on the right side. A table 424 provides a key of mapping 422.
For example, row 1 of mapping 422 includes 18 foam D springs and 18 foam F springs.
[0090] A mapping 426 may correspond to a designation of short and firm on the left side and tall and soft on the right side. A table 428 provides a key of mapping 426.
[0091] In an implementation, suppose that a user selects a firmness/comfort preference as firm, and therefore, the difference in hardness of the springs between the shoulder and hip area may be about lkPa. Thus, additional foam springs acting as a bridge may not be needed between contoured configuration areas. Should a user select a firmness/comfort preference as soft, additional foam springs may be placed to act as a bridge between softer and firmer springs.
The bridge of foam springs itself may be one or more contoured configuration areas. However, other arrangements of bridges may be utilized. Exemplary bridges containing the same types of foam springs are depicted in mappings 422 and 426 of FIG. 4B. The bridge contains a pattern of foam layers in the middle which separates a left side of the mattress mapping from a right side of the mattress mapping.
[0092] FIG. 4C illustrates a mapping 430. Mapping 430 may be generated by central server system 104 based on a mapping obtained from storage device 110. Mapping 430 may be an image formatted by central server system 104 to contain aesthetically appealing graphic(s) which may be transmitted to user device 102 (and viewable by the user via display device 116).
[0093] FIG. 4D illustrates a mapping 432. Mapping 432 may be generated by central server system 104 based on a mapping obtained from storage device 110. Mapping 432 may be an image formatted by central server system 104 to contain aesthetically appealing graphic(s) which may be transmitted to user device 102 (and viewable by the user via display device 116). The mappings provided in FIGs. 4A-4D contain exemplary mappings and other types of mappings may be used.
[0094] In an implementation, generalized consumer proportional dimension data may be an image generation server as depicted in FIG. 1B. Specifically, FIG. 1B illustrates a block diagram 130 depicting components for obtaining generalized consumer proportional dimension data. Block diagram 130 includes a back-end service 132, an app 134, an API 136, a measurement service 138, and a recommendations service 140. [0095] Back-end service 132, app 134, API 136, measurements services 138, and/or recommendations service 140 may include processing logic that comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof. Back- end service 132 may run on central server system 104 depicted in FIG. 1 A or elsewhere.
[0096] App 134 may be app or web-based application that runs on user device 102 depicted in FIG. 1A or elsewhere.
[0097] API 136 defines interactions between software application(s) and/or mixed hardware-software intermediaries. API 136 may gather data and/or communicate unidirectionally or bidirectionally with other applications and may run on central server system
104 depicted in FIG. 1 A or elsewhere.
[0098] Measurements service 138 may run on image generation server 114 depicted in
FIG. 1A or elsewhere.
[0099] Recommendations service 140 may run on central server system 104 depicted in FIG. 1A or elsewhere.
[00100] Suppose a user (John) is asked to input generalized consumer proportional dimension data in order to order a custom mattress. For example, John may be provided with interface 232 as depicted in FIG. 2C which requests that the John selects the option to take photo(s) via the photo scanning app. John may launch his application as shown in block 142.
In block 144, John my provide user input such as his name, user identification, etc. The user input is transmitted by app 134 to API 136. In block 146, API 136 creates a person of record.
[00101] In block 148, API 136 associates the user input with the person (John). Such association(s) may be stored in a database.
[00102] John may then be asked to capture one or more pictures using his mobile device’s camera. In block 150, app 134 obtains access to the device’s camera and receives camera flow input (i.e., in the form of a captured photograph(s)). App 134 then transmits the camera flow input to API 136. In block 152, API 136 receives or otherwise uploads the photograph(s). At block 154, API 136 stores the photograph(s) at a storage device. The storage device may be any device that stores photographs. The photographs are securely stored and may not have any identification information or coded/anonymous identification information.
[00103] API 136 then transmits the photograph(s) to measurements services 138. In block 156, measurements service 138 performs face detection on the photograph(s). In block
158, measurements services 138 performs body detection on the photograph(s). In block 160, measurements services 138 generates a 3D model of the face and/or body. In block 162, measurements services 138 performs adjustments to the 3D model. Such adjustments include accounting for any missing or distorted body portions, determining (and eliminating, as needed) any errors in the body portions, etc. In block 164, measurements services 138 then process the photograph(s) and calculates measurements. For example, measurements services
138 may calculate the generalized proportion dimension data from the photograph(s). In block
166, measurements services 138 scrubs or otherwise anonymizes the measurements so they are general and not specific to a person’s photograph(s). In block 168, measurements services 138 then destroys the photograph(s). The deletion of photographs is performed in a secure manner and is permanent. In block 170, measurements services 138 stores the measurements in a storage. The storage may include a database.
[00104] Measurements services 138 transmits only the measurements from storage to recommendations service 140. In block, 172, recommendations service 140 calculates a recommendation for a mattress/foam type best suited for the user in view of the generalized proportion dimension data and in block 174, the recommendations are transmitted by recommendations service 140 back to app 134. In other implementations, the recommendations may include generalized proportion dimension data itself. App 134 may then use the recommendation along with other information to generate the best mattress mapping for the user.
[00105] FIG. 5 is a flow diagram illustrating a method 500 of customizing a mattress using an image generation server, according to an implementation of the present disclosure.
The method 500 may be performed by processing logic that comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
[00106] For simplicity of explanation, the methods of this disclosure are depicted and described as a series of acts. However, acts in accordance with this disclosure can occur in various orders and/or concurrently, and with other acts not presented and described herein.
Furthermore, not all illustrated acts may be required to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods could alternatively be represented as a series of interrelated states via a state diagram or events. Additionally, it should be appreciated that the methods disclosed in this specification are capable of being stored on an article of manufacture to facilitate transporting and transferring such methods to computing devices. The term “article of manufacture,” as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. In one implementation, method 500 may be performed by a central server system (e.g., central server system 104) as shown in FIG. 1A.
[00107] As illustrated, method 500 starts at block 502. At block 504, a request is received in a central server system to create a mattress. The request is sent from a user device.
For example, as depicted in FIG. 1A, central server system 104 receives a request to create a mattress. The request is sent from user device 102. A user employing user device 102 may send a request to central server system 104 to create the mattress in any of a variety of ways. For example, the user may access a website on a web browser, click on a link, access a mobile app, etc., in order to create the mattress.
[00108] Referring again to FIG. 5, at block 506, a plurality of customization options for the mattress are transmitted to the user device. The plurality of customization options are configured to be depicted on a display of the user device. For example, as depicted in FIG.
1A, central server system 104 transmits multiple customization options to user device 102 and the customization options are configured to be displayed on display device 116 of user device
102. Some customization options are shown in FIGS. 2A-2D.
[00109] Referring again to FIG. 5, at block 508, in response to transmitting the plurality of customization options, input data is received from the user device. The input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
[00110] For example, as depicted in FIG. 1A, central server system 104 receives input data from user device 102 in response to transmitting the multiple customization options. The input data includes one or more of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
[00111] Referring again to FIG. 5, at block 510, generalized consumer proportional dimension data generated by an image generation server is received in the central server system. For example, as depicted in FIG. 1A, central server system 104 receives generalized consumer proportional dimension data generated by image generation server 114.
[00112] Referring again to FIG. 5, at block 512, based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas is determined. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating. A first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. For example, as depicted in FIG. 1A, central server system 104 determines placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of multiple ergonomic contoured configuration areas based on the input data and the generalized consumer proportional dimension data. The placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas may be determined to match the consumer’s tactile experience with the mattress expected by the online store. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs includes a corresponding strength and density rating. A first ergonomic contoured configuration area of the multiple ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. The strength rating may also be referred to as firmness.
[00113] Referring again to FIG. 5, at block 514, a mapping of the mattress corresponding to the placement is retrieved. For example, as depicted in FIG. 1 A, central server system 104 retrieves the mapping of the mattress corresponding to the placement of the foam springs from storage device 110.
[00114] Referring again to FIG. 5, at block 516, the mapping is transmitted to the user device. For example, as depicted in FIG. 1 A, central server system 104 transmits the mapping to user device 102. User device 102 may provide the mapping for display to the user on display device 116. The method then ends at block 518. [00115] In some implementations, central server system 104 may retrieve tables corresponding to the mappings along with the mappings of mattresses from storage device 110.
Additionally, mattress layer architectures (e.g., mattress layer architecture 314) may also be stored by storage device 110. Therefore, a mattress layer architecture indicative of one or more mattress layers may be retrieved by central server system 104.
[00116] FIG. 5 describes customization of a mattress based on generalized consumer proportional dimension data provided by image generation server 114. In other implementations, user device 102 and not image generation server 114 may provide the same or similar generalized consumer proportional dimension data to central server system 104. This implementation is described below with respect to FIG. 6. In yet other implementations, the generalized consumer proportional dimension data may be provided by both image generation server 114 and user device 102.
[00117] FIG. 6 is a flow diagram illustrating a method 600 of customizing a mattress using generalized consumer proportional dimension data provided by the user device. The method 600 may be performed by processing logic that comprises hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
[00118] For simplicity of explanation, the methods of this disclosure are depicted and described as a series of acts. However, acts in accordance with this disclosure can occur in various orders and/or concurrently, and with other acts not presented and described herein.
Furthermore, not all illustrated acts may be required to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods could alternatively be represented as a series of interrelated states via a state diagram or events. Additionally, it should be appreciated that the methods disclosed in this specification are capable of being stored on an article of manufacture to facilitate transporting and transferring such methods to computing devices. The term “article of manufacture,” as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. In one implementation, method 600 may be performed by a central server system (e.g., central server system 104) as shown in FIG. 1A.
[00119] As illustrated, method 600 starts at block 602. At block 604, a request is received in a central server system to create a mattress. The request is sent from a user device.
For example, as depicted in FIG. 1A, central server system 104 receives a request to create a mattress. The request is sent from user device 102. A user employing user device 102 may send a request to central server system 104 to create the mattress in any of a variety of ways.
For example, the user may access a website on a web browser, click on a link, access a mobile app, etc., in order to create the mattress.
[00120] Referring again to FIG. 6, at block 606, a plurality of customization options for the mattress are transmitted to the user device. The plurality of customization options are configured to be depicted on a display of the user device. For example, as depicted in FIG.
1A, central server system 104 transmits multiple customization options to user device 102 and the customization options are configured to be displayed on display device 116 of user device
102. Some customization options are shown in FIGS. 2A-2D.
[00121] Referring again to FIG. 6, at block 608, in response to transmitting the plurality of customization options, input data is received from the user device. The input data comprises at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
[00122] For example, as depicted in FIG. 1A, central server system 104 receives input data from user device 102 in response to transmitting the multiple customization options. The input data includes one or more of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user.
[00123] Other input data may be considered including a location of pain experienced by the user, disturbed sleep (disruptions in sleep, lack of proper amount of sleep), snoring, etc.
The location of pain may indicate that a user requires a particular type of foam in a contoured configuration area. For example, if the user has lower back pain, it may be beneficial to provide a contoured configuration area that corresponds to the area where the user’s lower back would fall on the mattress mapping that has a particular firmness determined to ease back pain.
Location of aches and pains that are input by the user enables alteration of the firmness of corresponding contoured areas. In other implementations, users may be able to determine softer or former areas in particular areas of the mattress mappings and override the suggested mattress mapping.
[00124] Referring again to FIG. 6, at block 610, generalized consumer proportional dimension data is received from the user device. For example, as depicted in FIG. 1A, central server system 104 receives generalized consumer proportional dimension data from user device
102.
[00125] Referring again to FIG. 6, at block 612, based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas is determined. The placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas may be determined to match the consumer’s tactile experience with the mattress expected by the online store. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength/firmness and density rating. A first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data. For example, as depicted in
FIG. 1A, central server system 104 determines placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of multiple ergonomic contoured configuration areas based on the input data and the generalized consumer proportional dimension data. Each of the first type of foam springs, the second type of foam springs and the third type of foam springs includes a corresponding strength and density rating.
A first ergonomic contoured configuration area of the multiple ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data.
[00126] Referring again to FIG. 6, at block 614, a mapping of the mattress corresponding to the placement is retrieved. For example, as depicted in FIG. 1 A, central server system 104 retrieves the mapping of the mattress corresponding to the placement of the foam springs from storage device 110.
[00127] Referring again to FIG. 6, at block 616, the mapping is transmitted to the user device. For example, as depicted in FIG. 1 A, central server system 104 transmits the mapping to user device 102. User device 102 may provide the mapping for display to the user on display device 116. The method then ends at block 618.
[00128] Implementations described herein may apply to either or both of the methods described by method 500 and method 600.
[00129] In an implementation, the generalized consumer proportional dimension data includes one or more of the following: a distance between hips and shoulders of the user, a height of the user, a shoulder width, weight, or a hip circumference. [00130] In an implementation, each of the multiple ergonomic contoured configuration areas include one of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
[00131] In an implementation, central server system 104 depicted in FIG. 1 A receives a confirmation from user device 102 to purchase the mattress in view of the mapping. For example, after the user receives the mapping, the user may be satisfied with the mapping and wish to purchase the mattress. The user may purchase the mattress in any of a variety of ways.
For example, a user may review his/her shopping cart and check out and submit payment. After central server system 104 receives confirmation of the payment, central server system 104 provides the mapping to mattress production device 112 to produce the mattress.
[00132] In another implementation, wherein prior to receiving the confirmation, central server system 104 receives a modification of the mapping. For example, the user may review the mapping and decide to modify it. The user may modify the mapping by going back to one of the customization options depicted on display device 116 and change his/her responses.
Otherwise, the user may select the mapping and modify the placement of any of the ergonomic contoured configuration areas and/or the foam types of foam springs. Central server system
104 may then provide the modification to the mapping to mattress production device 112.
[00133] As described above, the modification to the mapping may include a modification to one or more of the multiple ergonomic contoured configuration areas including a modification of the placement of one or more of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
[00134] In an implementation, central server system 104 generates a code in view of the input data and the customized options. However, the code may be modified or a new code may be created based on the input data, the customized options, and/or input provided by a neural network, as described herein. Additionally, the mattress mappings themselves may be updated by the neural network and used to create customized mattress for future users as described herein. The mattress mappings may be updated as more consumer data is collected to continually refine selection and contouring. Updating of mattress mapping may be performed manually or via neural network 124. In an implementation, the code refers to (and is based on) the variables input by the consumer and that code is then used to determine the subsequent parts used to personalize the mattress by mattress production device 112 (or other device).
[00135] The code generated by central server system 104 may contain an indication of one or more predefined mappings recognized by the online store as matching the pattern of consumer input data. The generated code may contain one or more mappings created or otherwise acquired by the online store from one or more initially predefined mappings.
Accordingly, the mappings of the unique and/or customized mattress may be a based on static and/or adaptive pattern recognition. In order to customize mattresses based on static and/or adaptive pattern recognition, artificial intelligence may be implemented via neural network
124. Therefore, based on the training neural network 124, customized mattresses that suit users in view of their input data and/or customized options can be provided.
[00136] Neural network 124 may be a computational tool capable of recognizing patterns, making predictions, identifying outliers, and/or identify alterations based on past input/mistakes. Inclusion of neural network 124 within system architecture 100 may enable the online store to better anticipate a user’s tactile experience. Training neural network 124 with user feedback, such as survey responses, may enable adaptive pattern recognition allowing for better anticipation of a consumer’s tactile experience from consumer input data. Extending the training by allowing neural network 124 to correct for consistent tactile insufficiencies may enable the creation derivative mappings to be stored within storage device 110. Allowing neural network 124 to increase its reward during training by taking the action of identifying and excluding customers may enable the identification of costumer populations not served by the predefined and/or derived mappings stored within storage device 110. In so doing, neural network 124 may motivate the creation of new mappings.
[00137] Details regarding input and output of a neural network used to create artificially intelligent customized mappings are described herein with respect to FIGs. 7-11. FIG. 7 is a flow diagram illustrating a method 700 of providing a customized mattress utilizing a trained neural network, such as neural network 124.
[00138] Referring now to FIG. 7, the method starts at block 702. At block 704, an initial set of mattress mappings (each of which includes a mapping of foam springs and/or foam layers) designed to provide a believed optimal tactile experience to one or more suspected subsets of users are stored. A believed optimal tactile experience is one that is predicted by a developer for a user.
[00139] The mattress mappings may be stored in storage device 110 or elsewhere. The input data received at central server system 104 is then provided to trained neural network 124 as input enabling neural network 124 to select the mattress mapping from best corresponding with the input data, as indicated by block 706. Training neural network may be accomplished using any algorithm allowing neural network to associate input data corresponding to the one or more suspected subsets of users with the mattress mapping designed to provide a believed optimal tactile experience to for each of the subsets. Accordingly, neural network may be trained to associate input data with the mattress mapping believed to provide the user with an optimal tactile experience. As input data is a pattern comprising preferred generalized proportion dimension data and entered customization options corresponding to a mattress mapping defined by a mattress code, neural network 124 may be trained with utilizing a pattern recognition algorithm (e.g., backpropagation, etc.). Regardless of how trained, neural network
124 provides users within one of more the suspected subsets a mattress containing an initially matched mapping, as depicted by block 708. The mattress may be given as the result of purchase, gift, participation in trial program, etc. The means of conveyance may not be of particular importance, so long as it provides the recipient an opportunity to use the mattress, as depicted in block 710. Specifically, in block 710, a user uses the mattress (e.g., lays on it, sleeps on it, tests it out, etc.).
[00140] After using the mattress, the user receives a survey distributed by central server system 104 in block 712 to rate his/her tactile experience. The rating may be obtained from a variety of questions, such as experience of pain, perception of firmness, quality of sleep, rating of comfort, support, and ability to fall asleep. Additional information regarding the surveys are described herein.
[00141] Upon completion of the survey, as shown in block 714, the survey is returned by the user. Specifically, central server system 104 receives the completed survey from user device 102. Completed surveys are then used to retrain neural network 124 at block 716, changing the selection algorithm to better anticipate the tactile impression of future customers/users. The method ends at block 718.
[00142] In an implementation, neural network 124 may be trained/retrained as to recognize patterns within the input data and/or customized options distinguishing users from their initial suspected subset, such that the neural network selects a different predefined mapping, or none at all, for users not having an acceptable tactile experience. The retraining may be accomplished using anyone or more of a variety of learning algorithms, such as backpropagation or reinforcement learning. Reinforcement learning is a type of machine learning technique that enables an agent to learn in an interactive environment by trial and error using feedback from its own actions and experiences. Reinforcement learning has an input and uses rewards and punishment as signals for positive and negative behavior. A state is defined as a current situation of the agent. [00143] When reinforcement learning is employed, the state will be the input data provided by the user, the action will be paring a user input data with a mapping stored in storage device 110, and the reward will be a survey score provided by the consumer after using the mattress. The goal would be to minimize potential negative user(s)’ ratings (submitted, for example, via survey responses) and to maximize potential favorable ratings.
[00144] In order to maximize a score assigned to user satisfaction based on the user(s)’ ratings, during retraining with survey data and score neural network 124 may learn to take actions not tolerated in retail. Selling products such as mattresses to consumers is the goal of retail businesses, whether the businesses sell mattresses online or via brick-and-mortar locations. For example, when a customer enters a store, accordingly, refusing to sell them a product if it is predicted that the customer would assign a low user rating to a product would generally be a negative action which is not rewarded. Contrary to the negative reward of losing a sale, during retraining neural network 124 may learn not to associate a certain subset of users with any of the stored mappings, and thereby learn not sell such customers a mattress.
[00145] Another negative retail behavior that may be considered during retraining is not listening to the customer. Generally, not listening to customer and ignoring one or more his/her customization requests is generally considered a negative retail action. In order to maximize survey score reward, neural network 124 may learn to ignore certain or all requests from certain groups of consumers when selling them a mattress. The subsets of consumers neural network
124 learns to ignore and/or not listen to may be identified, as to provide designers the opportunity to develop new mattress mappings providing a more positive tactile experience.
After establishing new mappings, the neural network can be retrained to associate the subset of ignored and/or not listened to consumers with the new mattress mappings. [00146] Although mappings of mattresses are described generally, it is respectfully submitted that mappings may specifically include mappings of foam springs (for example, as shown in third layer 320 of FIG. 3B) or mappings that include one or more layers.
[00147] In an implementation, retraining neural network 124 may utilize user supplied data in response to a user(s)’ survey. The consumer may be supplied with the survey after having used his/her newly created customized matters (e.g., after block 710 of FIG. 7).
[00148] For example, a survey may request information such as the following from consumers: (A) In comparison to previous mattress, did your newly created customized mattress improve overall comfort, sleep quality and does user feel supported? (B) Did your newly created customized mattress match user expectations on the firmness rating that you supplied? (C) If the left and the right sides of your newly created customized mattress included configurations that had different spring positions (and layers), is the middle of the mattress suitable for your needs/if there is a bridge of springs separating the left and the right sides, are both users happy with the mattress? (D) Are there any discomfort points that you’re experiencing (shoulders, hips, legs/knees, etc.)? (E) If you could change any of the foam springs in your mattress, would you change the hardness on any part of the mattress? (F) What was your first impression when you received and opened your newly created customized mattress? (G) How was your first night’s sleep on your newly created customized mattress?
(H) How comfortable did you find your newly created customized mattress? (I) How does your new mattress live up to your expectations of what you thought a customized mattress would be like? (J) Do you feel you have been able to fall asleep faster on your newly created customized mattress? (K) Do you feel you are getting more restful, deeper sleep with your newly created customized mattress? (L) Do you feel your newly created customized mattress is helping you sleep for longer periods of time? (M) Can you tell us what you most like about N) How satisfied are you with your newly created customized mattress? (O) If satisfied, can you tell us what elements of your newly created customized mattress you are most satisfied with? (P) If dissatisfied, can you tell us what elements of your newly created customized mattress you are most dissatisfied with? (Q) How likely would you buy another customized mattress? (R) What would you be prepared to pay for a newly created customized mattress? (S) How likely is it that you would recommend a customized mattress to friends and family, now that you have tried it?
[00149] The consumer may input responses by selection of predetermined responses, input of textual responses, input of a scaled numerical response (e.g., a selection of a number from 0 to 10, etc.) or by other means. The responses may be transmitted from user device 102 to central server system 104 via network 105, as depicted in FIG. 1 A.
[00150] Referring again to FIG. 7, although not depicted, block 716 may be recursive, that is, retraining of neural network 124 may be continuous and/or updated sporadically, as new as additional information is received (e.g., as additional survey response are returned in block 714). In an implementation, the retraining may be performed dependent upon receipt of such additional information. In another implementation, the retraining may be performed on a predetermined scheduled basis. Other implementations for retraining may exist. Thus, the recursive nature of block 716 may be dependent on a variable (having a temporal dependency, etc.) and may be repetitive. Details regarding retraining are described herein with respect to
FIG. 10.
[00151] FIG. 8 is a block diagram 800 illustrating an exemplary neural network that may be used to anticipate a user’s tactile experience. Neural network 124 depicted in FIG. 1A may be the same or similar to or differ from neural network 124 depicted in FIG. 8. The implementation of neural network 124 depicted in FIG. 8 contains a series of nodes 802 arranged in layers: an input layer 804, a hidden layer 806, and an output layer 808. The nodes of each layer are connected by a series of weighted connections 810. In some instances, more than one hidden layer may be disposed between input layer 804 and output layer 808. It also possible that no hidden layer is present.
[00152] Regardless of the presence or absence of hidden layers, neural network 124 transforms the consumer provided input data received at input layer 804 into a mattress code retrievable from output layer 808 via weighted connections 810.
[00153] Fewer or greater layers and/or fewer or greater nodes than depicted in FIG. 8 may be implemented by neural network 124.
[00154] In other implementations, neural network 124 may include one or both of fully connected layers and/or layers that are not fully connected.
[00155] In one example, central server system 104 and/or neural network 124 in FIG.
1A may be trained to retrieve the following: mapping 402 when presented with input data representing a user having a distance between their shoulders and hips is less than 60 cm and having a user preference for soft firmness; mapping 406 when presented with input data representing a user having a distance between their shoulders and hips is greater than 60 cm and having a user preference for soft firmness; mapping 410 when presented with input data representing a user having a distance between their shoulders and hips is less than 60 cm and having a user preference for a firm firmness; and mapping 414 when presented with input data representing a user having a distance between their shoulders and hips is less than 60 cm and having a user preference for firm firmness. While various network architectures may be used, the neural network will generally comprise an input layer receiving the input data and an output layer specifying at least the mapping.
[00156] Training the online store to recognize input data patterns as corresponding to predefined and/or derived mattress mappings (which includes a mapping of foam springs and/or foam layers) may be accomplished training a neural network to provide adaptive pattern recognition and derivative product selection using a system architecture 900 depicted in FIG. 9. Specifically, FIG. 9 illustrates system architecture 900 for training a neural network to produce a customized mattress. System architecture 900 includes the system architecture 100 of FIG. 1 A and description of similar entities depicted by FIG. 1 A apply to those depicted by
FIG. 9. In some implementations, the system for training a neural network to provide adaptive pattern recognition and/or derivative product selection may be separate from the system architecture of an online store.
[00157] System architecture 900 includes a survey storage device 912, and a material storage device 914. Survey storage device 912 and/or material storage device 914 may be a memory (e.g., random access memory), a cache, a drive (e.g., a hard drive), a flash drive, a database system, or another type of component or device capable of storing data. Survey storage device 912 and/or material storage device 914 may also include multiple storage components (e.g., multiple drives or multiple databases) that may also span multiple computing devices (e.g., multiple server computers).
[00158] Training of a neural network, such as neural network 124, is accomplished via a training module 908 of a training server 902. Training server 902 includes a clustering module 904, a scoring module 906, a training module 908, and a training network 910.
Training server 902 subjects training of neural network 124 to a training routine, such as the reinforcement learning algorithm depicted in FIG. 10. To facilitate retraining of neural network 124 without disrupting operation of an online store, training network 910 may be a copy of neural network 124 obtained via network 105. If disruption of operation of the online store is tolerable or preferred, training network 910 may be admitted such that training module
908 operates directly on neural network 124. Regardless of which neural network is utilized, training server relies upon the operation of clustering module 904 to identify related subsets of costumers, scoring module 906 to assign a score to each cluster based on survey data collected and stored in survey storage device 912, and training module 908 to alter training network 910 to obtain better survey results indicative of improved tactile experiences for future consumers.
One possible coordinated operation of these modules is reinforcement learning algorithm depicted in FIG. 10.
[00159] FIG. 10 is a flow diagram illustrating a method 1000 of a reinforcement learning algorithm. The method 1000 may be performed by processing logic that comprises hardware
(e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions run on a processing device to perform hardware simulation), or a combination thereof.
[00160] For simplicity of explanation, the methods of this disclosure are depicted and described as a series of acts. However, acts in accordance with this disclosure can occur in various orders and/or concurrently, and with other acts not presented and described herein.
Furthermore, not all illustrated acts may be required to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods could alternatively be represented as a series of interrelated states via a state diagram or events. Additionally, it should be appreciated that the methods disclosed in this specification are capable of being stored on an article of manufacture to facilitate transporting and transferring such methods to computing devices. The term “article of manufacture,” as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. In one implementation, method 1000 may be performed by a central server system (e.g., central server system 104) as shown in FIG. 1A.
[00161] After initializing reinforcement learning algorithm at start block 1002, a set of mattress mapping classifications of subsets of consumers associated with the various mappings is stored in storage device 110 at block 1004. The classifications may include base classifications comprising relationships between input data and/or generalized consumer proportional dimension data patterns and mappings of mattress that are predicted (e.g., by developers of neural network 124) to provide a favorable tactile experience. In addition to preset relationships believed by developers to be correct, classifications may include relationships learned by training neural network 124 either directly or through training network
910 acting as a surrogate during previous training. Previous training refers to past training performed to alter neural network 124. Regardless of how the classifications are obtained, at block 1006 training network 910 is taught the classification such that it associates consumer input data with the mattress mapping believed to provide the consumer an optimal tactile experience utilizing a pattern recognition algorithm, such as backpropagation.
[00162] Referring again to FIG. 10, once trained for the classifications that are present within storage device 110, training network 910 is deployed at block 1008. If training network
910 is a surrogate of network 124, deployment may entail transferring training network 910 via network 105 to central server system 104 to replace neural network 124. If training network
910 is neural network 124 itself, deployment at block 1008 may simply entail launching the online store.
[00163] After deployment of training network 910, consumers are sold mattresses based on the operation of neural network 124 and return completed surveys. Completed surveys returned by customers may be stored in survey storage device 912. After a predetermined threshold is met (e.g., a set amount of time has passed, a set amount of sales have been made, a set amount of surveys have been returned, and/or other conditions indicative of collection of a sufficient amount of data have been met), subsets of customers returning surveys are determined via cluster analysis performed by clustering module 904 at block 1010. The clustering algorithm employed by clustering module 904 may comprise at least one connectivity-based clustering, centroid-based clustering, distribution-based clustering, density-based clustering, and/or density-based clustering, and/or any other algorithm enabling respondent customers to be grouped in terms of degree of similarity with respect to input data provided when ordering a mattress.
[00164] After clusters representing subsets of consumers have been identified, scoring module 906 at block 1012 scores the surveys of each consumer within a subset to determine a survey score for each subset (or cluster). The survey score for a cluster may be average score received all consumers within the cluster, the median score obtained from all consumers within the subset, and/or any other appropriate metric representing the satisfaction of the cluster as a whole. As input data is multidimensional, the scored clusters of consumers obtained at block
1012 will be dispersed in multidimensional space. For purposes of discussion, the multidimensional space can be simplified to a two-dimensional drawing, such FIG. 11.
[00165] FIG. 11 illustrates a two-dimensional representation of an arrangement 1100 of scored clusters of consumers. As can be seen from FIG. 11, each scored cluster of consumers
(clusters 1102-1116) are separated from each other by varying distance. As arrangement 1100 is two-dimensional, the distance is based on differences in an X value and a Y value, such that clusters having similar X and Y value are close to one another. Training module 908 utilizes the distance and difference in score between two clusters to train training network 910 at block
1014 of method 1000.
[00166] Referring again to FIG. 10, the training provided by training module 908 at block 1016 begins by determining the distances to the higher scores for each consumer providing a survey. If no clusters are within a predetermined limit, i.e. far away, training module 908 rewards training network 910 for excluding the customer by not selecting a mattress at block 1018. Utilizing a variant of reinforcement learning algorithms, training module 908 determines the value of a reward based on the survey score provided by the consumer. [00167] For example, suppose a consumer named Tom belongs to cluster 1102, which has cluster score of 2 out of 10 (where 10 is the maximum score, and 1 is a minimum score).
Tom’s survey score was 1, indicating he had a poor tactile experience. While other clusters have higher scores, none are within the defined limit - i.e., that are all far away. In this scenario, the maximum reward possible for selling a mattress to Tom is the cluster score of 2.
Not selling Tom a mattress also provides a reward calculated at block 1018 as the difference between a perfect survey score and the cluster score of cluster 1102. Assuming 10 is a perfect survey score and given the cluster score of cluster 1102 is 2, the reward would 8. Other methods of assigning a reward for not selling a mattress may be used, so long as the reward for not selling obtained increases as cluster score decrease. Keeping with the example, the maximum score obtainable is 8, indicating a bigger reward would be obtain by not selling someone like Tom a mattress in the future. The values of the weighted connections are then updated to indicate that the association desired from Tom’s input data is “no sale”. Any algorithm may be used to update the weights according to the desired association, such as backpropagation.
[00168] After Tom, training module 908 moves on to the next customer within the training set and determines the distance to a higher score at block 1016 in FIG. 10. If the distance to higher scoring cluster is within a threshold, i.e. close, training module identifies and corrects for consistent tactile insufficiencies at block 1020. In making this correction, tactile module may compare the actions between the cluster of the current customer of the training set and that of the higher scoring close clusters to determine if there is a “better choice available”, and if so, training module 908 rewards training network 910 for changing input data in block
1022. For instance, consider clusters 1104 and 1106. They are very close, meaning the input data is very similar, but have opposite results. Cluster 1106 had the pleasant tactile experience of “just right”, while cluster 1104 have the unpleasant experience of “too soft”. Correcting for this inconsistency, training module 908 at block 1022 will reward training network 910 for changing the input data by updating the weighted connections such that the association desired from the input data of a consumer of cluster 1104 is a mattress identical to that sold to the members of cluster 1106. Any algorithm may be used to update the weights according to the desired association, such as backpropagation.
[00169] A necessary consequence of adjusting the weights of training network 910 to provide the mattress of cluster 1106 when presented the input data from the members of cluster
1104 is possibly ignoring a preference of the members of cluster 1104. For instance, assume the members of cluster 1106 all requested a firm mattress and the members of cluster 1104 all requested a soft mattress. Adjusting the weights of training network 910 to provide a firm mattress when a soft mattress is requested is training network 910 to ignore the request made by members of cluster 1104 for a soft mattress.
[00170] The presence of a “better choice available” is also depicted by the relationship between clusters 1110, 1112, and 1114. When training module 908 reaches a member of cluster 1112, it will determine at block 1016 the distance to the higher scores of clusters 1110 and 1114. Unlike the members of cluster 1112, the members of cluster 1110 and 1114 each reported “good sleep”, and thus have higher scores than the “poor sleep” reported by the members of cluster 1112. As the clusters 1110, 1112, and 1114 are adjacent, the distance to each of higher scoring clusters 1110 and 1114 is within a threshold, i.e. close. Accordingly, training module identifies and corrects for the consistent tactile insufficiency at block 1020. In so doing, training module determines if there is a “better choice available” by looking for at least one difference between the mattresses provided to members of cluster 1112 and the mattress provided to clusters 1110 and 1114. For example, assume the members of clusters
1110, 1112, and 1114 only differ with respect to the distance between their hips and shoulders, such that the members of cluster 1110 have distance of 58 cm or less, the members of cluster 1112 have a distance of 59 cm, and members of cluster 1114 have a distance of 60 cm or greater. As noted above, training network 910 may have assigned members of both clusters
1110 and 1112 to a category called the short mattress group. The members of clusters 1110 and 1112, thus, would have each received a mattress identified as a short mattress (and having a corresponding code and/or mattress mapping associated thereto). Receiving nearly identical, if not identical, mattresses and treating the members of cluster 1112 like the members of cluster
1110 would not change the mattress provided to the members of cluster 1112. Failing to change the mattress, treating the members cluster 1112 the same as cluster 1110 does not provide a better choice, but rather the same choice of mattress. Each one receiving a tall mattress, the members of cluster 1114 did receive a different mattress than the members of cluster 1112 as to indicate the presence of a “better choice available”. Having a better choice available, training module 908 corrects for tactile insufficiency at block 1022 by rewarding training network 910 to change the user input data by updating the weighted connections such that the members of cluster 1114 are provided a tall, rather than short, mattress.
[00171] Eventually training module 908 reaches a member of cluster 1108, who had an unpleasant tactile experience indicated the cluster score of 3. Cluster 1108, as shown in arrangement 1100, is close to higher scoring clusters 1110 and 1114. Accordingly, when training modules determines the distance to higher scores at block 1016, it will determine the distance to be “close”. It will then determine if a better choice is available by looking for differences between the mattresses provided to the consumers of cluster 1108 and those provided to the customers of clusters 1110 and 1114. Assuming a different mattress was provided to each of clusters 1108, 1110, and 1114, at least two potentially better choices are available. Determining which of the better choices to select, training module 908 will attempt to maximize reward while minimizing work by adjusting the difference in scores between cluster 1108 and cluster 1114 and the differences in scores between clusters 1108 and 1110 by the distance between the respective clusters such that the reward decreases with distance.
[00172] At block 1022 training module 908 will correct for tactile insufficiency by rewarding training network 910 to change the user input data by updating the weighted connections such that the members of cluster 1108 are provided the mattress given to the customers of cluster 1114.
[00173] Cluster 1116 within arrangement 1100 represents another tactile insufficiency that may be corrected at block 1020. Having a cluster score of 5, consumers of cluster 1116 are experience decent, but not perfect sleep. Even if members of clusters 1114 received different mattress than the members of clusters 1116, as to make a “better choice available”, the distance between the clusters is such that reward for choosing the better options may be greatly diminished. In such a situation, the maximum reward may be obtained by changing the materials of the mattresses provided to the members of cluster 1116. In making the determination to change materials, and thereby create a derivative mattress mapping, the reward may be determined based on the confidence the change will improve cluster score. For instance, assume the mediocre cluster score of 5 results from several members of cluster 1116 reporting discomfort in similar regions of the body. Further assume the members of cluster
1116 share a similar generalized consumer proportional dimension of wide shoulders and are side sleepers. Training module 908 may have access to data associating discomfort in the neck with the need for a softer mattress. Training module 908 may search and/or query material storage device for a foam softer than the foam utilized in the mattress delivered to the consumers of cluster 1116. Dependent of the confidence in the data, the reward for changing the mattress mapping to include the softer material would be dependent would decrease with confidence. For instance, if the data is based on correlation between firmness and neck pain, the amount of reward for making the change may decrease with the correlation coefficient between neck pain and firmness.
[00174] Referring again to FIG. 10, if in block 1020 it is determined that the distance to high score determines that there is “associated material available,” training module 908 rewards training network 910 for changing mapping in block 1024.
[00175] After retraining, derived mappings and new classifications are extracted at block 1030 and stored at block 1004. Similarly, at block 1026 common features of excluded customers are identified. If provided to product development teams, development of new mattress mapping may occur, as indicated by block 1028. Any new mappings and classifications based thereon may be stored at block 1004 in storage device 110. Repeating block 1006, neural network 124 may be trained on the classification as to enable the store to anticipate a future consumer’s tactile experience.
[00176] Neural network 124 may be contained within or otherwise remote and accessible by central server system 104. Neural network 124 and/or central server system 104 may be trained to retrieve one of the stored mappings from storage device 110 when presented with input data and/or generalized consumer proportional dimension data meeting predefined conditions representing a base classification for the training.
[00177] Base classifications may include relationships between input data and/or generalized consumer proportional dimension data patterns and mappings of mattress that are predicted (e.g., by developers of neural network 124) to provide a favorable tactile experience.
In addition to preset relationships believed by developers to be correct, base classifications used to train network 124 may include relationships learned by network 124 during previous training. Previous training refers to past training performed by neural network 124.
[00178] Regardless of whether including preset relationships based on developer belief and/or relationships determined by central server system 104 via previous training of neural network 124, training neural network 124 for base classification may involve adjusting at least one weight matrix of network 124 such that presenting input data to the input layer of network
124 provides an output at the output layer of network 124 indicative of the mapping related to the input according to the base classifications.
[00179] Although central server system 104 and/or training server 902 are indicated as performing training of neural network 124, in other implementations, one or more other servers may be used.
[00180] FIG. 12 illustrates a diagrammatic representation of a machine in the exemplary form of a computer system 1200 within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed. In alternative implementations, the machine may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, or the Internet. The machine may operate in the capacity of a server or a client machine in client-server network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a server, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term
“machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
[00181] The exemplary computer system 1200 includes a processing device (processor)
1202, a main memory 1204 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM
(RDRAM), etc.), a static memory 1206 (e.g., flash memory, static random access memory (SRAM), etc.), and a data storage device 1218, which communicate with each other via a bus
1208.
[00182] Processing device 1202 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 1202 may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or processors implementing a combination of instruction sets. The processing device 1202 may also be one or more special- purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 1202 is configured to execute instructions 1226 for performing the operations and steps discussed herein.
[00183] The computer system 1200 may further include a network interface device
1222. The computer system 1200 also may include a video display unit 1210 (e.g., a liquid crystal display (LCD), a cathode ray tube (CRT), or a touch screen), an alphanumeric input device 1212 (e.g., a keyboard), a cursor control device 1214 (e.g., a mouse), and a signal generation device 1220 (e.g., a speaker).
[00184] The data storage device 1218 may include a computer-readable storage medium
1224 on which is stored one or more sets of instructions 1226 (e.g., software) embodying any one or more of the methodologies or functions described herein. The instructions 1226 may also reside, completely or at least partially, within the main memory 1204 and/or within the processing device 1202 during execution thereof by the computer system 1200, the main memory 1204 and the processing device 1202 also constituting computer-readable storage media. The instructions 1226 may further be transmitted or received over a network 1274 via the network interface device 1222. [00185] In one implementation, the instructions 1226 include customized mattress logic
1228 for creating a customized mattress as described above with respect to FIGs. 5, 6 7, 9, and/or 10. While the computer-readable storage medium 1224 is shown in an exemplary implementation to be a single medium, the term “computer-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions.
The term “computer-readable storage medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present disclosure. The term “computer-readable storage medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical media, and magnetic media.
[00186] In the foregoing description, numerous details are set forth. It will be apparent, however, to one of ordinary skill in the art having the benefit of this disclosure, that the present disclosure may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the present disclosure.
[00187] Some portions of the detailed description have been presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory.
These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
[00188] It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as
“receiving,” “sending,” “determining,” “identifying,” “presenting,” “generating,”
“associating,” “storing,” or the like, refer to the actions and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (e.g., electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
[00189] The disclosure also relates to an apparatus for performing the operations herein.
This apparatus may be specially constructed for the required purposes, or it may include a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-
ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories
(RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions.
[00190] The words “example” or “exemplary” are used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “example’ or
“exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, use of the words “example” or “exemplary” is intended to present concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “of’ rather than an exclusive “or”. That is, unless specified otherwise, or clear from context,
“X includes A or B” is intended to mean any of the natural inclusive permutations. That is, if
X includes A; X includes B; or X includes both A and B, then “X includes A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form. Moreover, use of the term “an embodiment” or “one embodiment” or “an implementation” or “one implementation” throughout is not intended to mean the same embodiment or implementation unless described as such.
[00191] Reference throughout this specification to “one implementation” or “an implementation” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, the appearances of the phrase “in one implementation” or “in an implementation” in various places throughout this specification are not necessarily all referring to the same embodiment. In addition, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.”
[00192] It is to be understood that the above description is intended to be illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reading and understanding the above description. The scope of the disclosure should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.

Claims

CLAIMS What is claimed is:
1. method of customizing a mattress comprising: receiving in a central server system a request to create a mattress from a user device; transmitting to the user device a plurality of customization options for the mattress, wherein the plurality of customization options are configured to be depicted on a display of the user device; receiving, in response to transmitting the plurality of customization options, input data from the user device, the input data comprising at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user; receiving generalized consumer proportional dimension data generated by an image generation server; determining, based, on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas, wherein each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating, and wherein a first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data; retrieving a mapping of the mattress corresponding to the placement; and transmitting the mapping to the user device.
2. The method of customizing a mattress of claim 1, wherein the generalized consumer proportional dimension data comprises at least one of a distance between hips and shoulders of the user, a height of the user, a shoulder width, or a hip circumference.
3. The method of customizing a mattress of claim 1, wherein each of the plurality of ergonomic contoured configuration areas comprise one of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
4. The method of customizing a mattress of claim 1, further comprising receiving a confirmation to purchase the mattress from the user device in view of the mapping.
5. The method of customizing a mattress of claim 4, providing the mapping to a mattress production device to produce the mattress.
6. The method of customizing a mattress of claim 4, wherein prior to receiving the confirmation, receiving a modification of the mapping, the method further comprising: providing the modification to the mapping to a mattress production device.
7. The method of customizing a mattress of claim 6, wherein the modification comprises a modification to at least one of the plurality of ergonomic contoured configuration areas including modifying the placement of at least one of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
8. The method of customizing a mattress of claim 1, further comprising: generating a mattress code in view of the input data and the generalized consumer proportional dimension data.
9. A method of customizing a mattress comprising: receiving in a central server system a request to create a mattress from a user device; transmitting to the user device a plurality of customization options for the mattress, wherein the plurality of customization options are configured to be depicted on a display of the user device; recei ving, in response to transmitting the plurality of customization options, input data from the user device, the input data comprising at least one of generalized size proportions, a body weight measurement of a user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user; receiving generalized consumer proportional dimension data from the user device; determining, based on the input data and the generalized consumer proportional dimension data, placement of a first type of foam springs, a second type of foam springs and a third type of foam springs in at least one of a plurality of ergonomic contoured configuration areas, wherein each of the first type of foam springs, the second type of foam springs and the third type of foam springs compri ses a corresponding strength and density rating, and wherein a first ergonomic contoured configuration area of the plurality of ergonomic contoured configuration areas is determined in view of the generalized consumer proportional dimension data; retrieving a mapping of the mattress corresponding to the placement; and transmitting the mapping to the user device.
10. The method of customizing a mattress of claim 9, wherein the generalized consumer proportional dimension data comprises at least one of a distance between hips and shoulders of the user, a height of the user, a shoulder width, or a hip circumference.
11. The method of customizing a mattress of claim 9, wherein each of the plurality of ergonomic contoured configuration areas comprise one of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
12. The method of customizing a mattress of claim 9, further comprising receiving a confirmation to purchase the mattress from the user device in view of the mapping.
13. The method of customizing a mattress of claim 12, providing the mapping to a mattress production device to produce the mattress.
14. The method of customizing a mattress of claim 12, wherein prior to receiving the confirmation, receiving a modification of the mapping, the method further comprising: providing the modification to the mapping to a mattress production device.
15. The method of customizing a mattress of claim 14, wherein the modification comprises a modification to at least one of the plurality of ergonomic contoured configuration areas including modifying the placement of at least one of the first type of foam springs, the second type of foam springs, or the third type of foam springs.
16. The method of customizing a mattress of claim 9, further comprising: generating a mattress code in view of the input data and the generali zed consumer proportional dimension data.
17. A customized mattress production system comprising: a mattress production device; a central server system comprising a first interface and. a second interface; the first interface configured to communicate with a user device, wherein the first interface transmits a plurality of customization options for a mattress to the user device, wherein the plurality of customization options are configured to be depicted on a display of the user device; the second interface configured to receive generalized consumer proportional dimension data of a body of a user and input data provided in view of the plurality of customization options, the input data comprising at least one of a body weight measurement of the user, a total number of users utilizing the mattress, a mattress size, a sleep position of the user, a height measurement of the user, an age of the user, or a mattress firmness preference of the user; a storage device to store a plurality of ergonomic contoured configuration areas, wherein, based on the input data and the generalized consumer proportional dimension data, the second interface communicates with the storage device to determine placement of a plurality of a first type of foam springs, a second type of foam springs and a third type of foam springs, wherein each of the first type of foam springs, the second type of foam springs and the third type of foam springs comprises a corresponding strength and density rating; wherein the second interface corresponds with the storage device to retrieve a mapping comprising a first layer of the mattress and a second layer of the mattress, the second layer comprising the first type of foam springs, the second type of foam springs and the third type of foam springs to be placed within the second layer of the mattress in corresponding ones of the plurality of ergonomic contoured configuration areas, wherein the mapping comprises a plurality of a fourth type of foam springs arranged in one of the plurality of ergonomic contoured configuration areas along a periphery of the second layer, and wherein the second interface transmits the mapping to the mattress production device.
18. The customized mattress production system of claim 17, wherein the central server system receives a confirmation to purchase the mattress from the user device in view of the mapping.
19. The customized mattress production system of claim 17, wherein the mattress production device produces the mattress in accordance with the mapping.
20. The customized mattress production system of claim 17, wherein the generalized consumer proportional dimension data is transmitted by at least one of the user device or an image generation server.
PCT/IB2021/055382 2021-06-17 2021-06-17 Customized mattress WO2022263897A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2021/055382 WO2022263897A1 (en) 2021-06-17 2021-06-17 Customized mattress

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2021/055382 WO2022263897A1 (en) 2021-06-17 2021-06-17 Customized mattress

Publications (1)

Publication Number Publication Date
WO2022263897A1 true WO2022263897A1 (en) 2022-12-22

Family

ID=76662509

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2021/055382 WO2022263897A1 (en) 2021-06-17 2021-06-17 Customized mattress

Country Status (1)

Country Link
WO (1) WO2022263897A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263816B1 (en) * 1998-05-01 2001-07-24 L&P Property Management Company Mattress cover printing and quilting system and method
US20060282954A1 (en) * 2003-08-27 2006-12-21 Willy Poppe Method to produce a mattress core and composed spring applied therewith
WO2014013083A1 (en) * 2012-07-20 2014-01-23 Carpenter Co. Spring components for cushioning devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263816B1 (en) * 1998-05-01 2001-07-24 L&P Property Management Company Mattress cover printing and quilting system and method
US20060282954A1 (en) * 2003-08-27 2006-12-21 Willy Poppe Method to produce a mattress core and composed spring applied therewith
WO2014013083A1 (en) * 2012-07-20 2014-01-23 Carpenter Co. Spring components for cushioning devices

Similar Documents

Publication Publication Date Title
US11042922B2 (en) Method and system for multimodal recommendations
JP6523498B1 (en) Learning device, learning method and learning program
US10318534B2 (en) Recommendations in a computing advice facility
WO2019148033A1 (en) Method and system for preference-driven food personalization
CA2842255C (en) A recommendation engine that processes data including user data to provide recommendations and explanations for the recommendations to a user
CN108431833A (en) End-to-end depth collaborative filtering
US20140181121A1 (en) Feature embedding in matrix factorization
CN103119620A (en) Action suggestions based on inferred social relationships
US11461630B1 (en) Machine learning systems and methods for extracting user body shape from behavioral data
KR102132714B1 (en) System and method for providing related services of immersive virtual fitting
WO2017176653A1 (en) System and methods for suggesting beneficial actions
US20200320468A1 (en) Computer System for Optimizing Garment Inventory of Retailer Based on Shapes of Users
Linda et al. Effective context-aware recommendations based on context weighting using genetic algorithm and alleviating data sparsity
KR102612969B1 (en) Method and system for providing information on posture calibration application
US20180197149A1 (en) Automated methods and systems to schedule activities
WO2022263897A1 (en) Customized mattress
Lai et al. Social-aware VR configuration recommendation via multi-feedback coupled tensor factorization
CN115481328A (en) Method and device for generating customized question bank, computer equipment and storage medium
Gong et al. Large population size IGA with individuals’ fitness not assigned by user
Liang FAGR: Fairness-aware Group Recommendation in Event-based Social Networks
Oh et al. A study on self-medication for health promotion of the silver generation
CN117786234B (en) Multimode resource recommendation method based on two-stage comparison learning
JP7325492B2 (en) Place recommendation method and system
Afsar Personalized Recommendation Using Reinforcement Learning.
el Hassouni A model a day keeps the doctor away: Reinforcement learning for personalized healthcare

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21735762

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 25.03.2024)