AUTONOMOUS PREFERENCE SYSTEM FOR A VEHICLE

DE102023133471A1Pending Publication Date: 2025-03-06GM GLOBAL TECHNOLOGY OPERATIONS LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE102023133471
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-31
Filing Date
2023-11-30
Publication Date
2025-03-06

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

An autonomous preference system for vehicles comprises multiple sensors located within the vehicle's interior and data processing hardware containing memory that stores a user profile containing user preferences and a trainable preference model, which includes a model trainer. The data processing hardware is configured to execute the model trainer in response to sensor data received from one or more of the multiple sensors to update the user preferences in the user profile. The data processing hardware is also configured to adjust the vehicle's environmental controls based on the trainable preference model and the updated user preferences.
Need to check novelty before this filing date? Find Prior Art

Description

INTRODUCTION

[0001] The information provided in this section is intended to provide a general context for the disclosure. The work of the presently named inventors, to the extent described in this section, as well as those aspects of the description that do not otherwise qualify as prior art at the time of filing, are neither expressly nor implicitly admitted as prior art against the present disclosure.

[0002] The present disclosure generally relates to an autonomous preference system.

[0003] Vehicles often provide preset functions for a user. For example, the user can store preset seat functions that can automatically adjust in response to user activation. Vehicles also include heating and cooling controls that can be adjusted by the user to adjust the vehicle's interior environment for comfort. Furthermore, the user can adjust the audio settings within the vehicle and select various playback options. Therefore, while the user can select and adjust any of the settings within the vehicle, the vehicle is typically a passive component, waiting for an input selection to be made. SUMMARY

[0004] In some aspects, an autonomous preference system for a vehicle includes a plurality of sensors disposed within a passenger compartment and environmental controls of the vehicle electrically coupled to one or more of the plurality of sensors and configured to detect user inputs. The autonomous preference system also includes computing hardware communicatively coupled to the plurality of sensors and the environmental controls. The computing hardware includes a memory storing a user profile containing user preferences. The computing hardware further includes a trainable preference model including a model trainer. The computing hardware is configured to execute the model trainer in response to the detected user inputs received from the environmental controls and to the sensor data received from one or more of the plurality of sensors.The trainable preference model updates the user preferences in the user profile and is configured to set the environmental controls based on the trainable preference model and the updated user preferences.

[0005] In some examples, the trainable preference model may be a machine learning model. Optionally, the sensor data may include audio data, image data, and / or weight data. The computing hardware may be configured to execute the model trainer in response to the audio data. In some cases, the user profile may include a routine, and the trainable preference model may be configured to generate the routine based on the environmental controls and the sensor data. The computing hardware may be configured to execute one or more of the user preferences based on the routine. In further examples, the computing hardware may include a navigation application that includes stored routes, and the model trainer may be configured to update the trainable preference model based on the stored routes.

[0006] According to further aspects, an autonomous preference system for vehicles comprises a plurality of sensors disposed within a passenger compartment of a vehicle and computing hardware including a memory storing a user profile containing user preferences and a trainable preference model containing a model trainer. The computing hardware is configured to execute the model trainer in response to sensor data received from one or more of the plurality of sensors to update the user preferences in the user profile. The computing hardware is also configured to adjust the environmental control of the vehicle via the trainable preference model based on the updated user preferences.

[0007] In some configurations, the model trainer may be configured to identify a user's routine in response to the sensor data and may be configured to update the trainable preference model and execute the routine. The routine may include one or more of the user preferences. The model trainer may be configured to update the routine during operation of the vehicle in response to a user input and / or the sensor data. In some examples, the computing hardware may be configured to identify a user based on the sensor data and may be configured to execute the user profile in response to the identified user.The data processing hardware may be configured to identify a new user based on the sensor data, and the model trainer is configured to update the trainable preference model in response to the identified new user. Optionally, the autonomous preference system for a vehicle may include a user device communicatively coupled to the data processing hardware. The user device may be configured to transmit route data and / or calendar data, and the trainable preference model may be configured to generate a new user preference based on the route data and / or calendar data.

[0008] According to yet further aspects, an autonomous preference system comprises a plurality of sensors within an interior of a vehicle and computing hardware including a memory storing a plurality of user profiles, each containing user preferences. The computing hardware includes a trainable preference model including a model trainer, and the computing hardware is configured to execute the model trainer in response to sensor data received from one or more of the plurality of sensors to update the user preferences in one or more of the plurality of user profiles. The trainable preference model is configured to select one of the user profiles based on the sensor data to execute the corresponding updated user preferences.

[0009] In some examples, the trainable preference model may be configured to autonomously learn new user preferences based on user input to the vehicle and sensor data from the multiple sensors. Optionally, the autonomous preference system may include a navigation application in communication with the computing hardware, and the model trainer may be configured to update the trainable preference model with one or more repeated routes from the navigation application. The trainable preference model may be configured to select one or more of the user preferences based on an identified repeated route from the navigation application.In some cases, the plurality of sensors may include a weight sensor configured to detect a first weight and at least one second weight, and the trainable preference model may be configured to select a first user profile from the plurality of user profiles in response to receiving the first weight from the weight sensor. The computing hardware may be configured to determine a time of day, and the trainable preference model may be configured to select corresponding user preferences from the one or more user profiles in response to the determined time of day. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The drawings described herein are for illustrative purposes only and are not intended to limit the scope of the present disclosure; they show: Fig. 1 is a perspective view of a vehicle with passengers according to the present disclosure; Fig. 2 is a functional block diagram of an autonomous preference system according to the present disclosure; Fig. 3 is a partial perspective view of a vehicle interior according to the present disclosure; Fig. 4 is a flowchart of an autonomous preference system according to the present disclosure; Fig. 5 a flowchart of the autonomous preference system of Fig. 4 according to the present disclosure; and Fig. 6 a flowchart of the autonomous preference system of Fig. 5 according to the present disclosure.

[0011] In all drawings, corresponding reference symbols designate corresponding parts. DETAILED DESCRIPTION

[0012] Example configurations will now be described more fully with reference to the accompanying drawings. Example configurations are provided so that this disclosure will be thorough and will fully convey the scope of the disclosure to those skilled in the art. Specific details, such as examples of specific components, devices, and methods, are set forth to provide a thorough understanding of configurations of the present disclosure. Those skilled in the art will appreciate that specific details need not be employed, that example configurations may be embodied in many different forms, and that the specific details and example configurations should not be construed to limit the scope of the disclosure.

[0013] The terminology used herein is for the purpose of describing specific example configurations only and is not intended to be limiting. As used herein, the singular articles "a," "an," and "the" are intended to include the plural forms unless the context clearly indicates otherwise. The terms "comprises," "including," "containing," and "having" are inclusive and therefore specify the presence of features, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more additional features, steps, operations, elements, components, and / or groups thereof.The method steps, processes, and operations described herein should not be construed as necessarily requiring their performance in the particular order discussed or illustrated, unless specifically identified as an order of performance. Additional or alternative steps may be employed.

[0014] When an element or layer is described as being "on," "engaging with," "connected to," "attached to," or "coupled to" another element or layer, it may be directly on, engaging with, connected to, attached to, or coupled to the another element or layer, or there may be intervening elements or layers. Conversely, when an element is described as being "directly on," "directly engaging with," "directly connected to," "directly attached to," or "directly coupled to" another element or layer, there need not be any intervening elements or layers. Other words used to describe the relationship between elements should be interpreted in a similar manner (e.g., "between" versus "directly between," "adjacent" versus "directly adjacent," etc.).As used herein, the term “and / or” includes any combination of one or more of the associated listed elements.

[0015] The terms first, second, third, etc., may be used herein to describe various elements, components, regions, layers, and / or sections. These elements, components, regions, layers, and / or sections are not intended to be limited by these terms. These terms may be used merely to distinguish one element, component, region, layer, or section from another region, layer, or section. Terms such as "first," "second," and other numerical terms do not imply a sequence or order unless clearly indicated by the context.Thus, a first element, component, region, layer, or section discussed below may be referred to as a second element, component, region, layer, or section without departing from the teachings of the example configurations.

[0016] In this application, including the definitions below, the term module may be replaced with the term circuit. The term module may refer to, be part of, or include an application-specific integrated circuit (ASIC); a digital, analog, or mixed analog / digital discrete circuit; a digital, analog, or mixed analog / digital integrated circuit; a combinational logic circuit; a field-programmable gate array (FPGA); a processor (shared, dedicated, or group) that executes code; memory (shared, dedicated, or group) that stores code executed by a processor; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system on a chip.

[0017] The term code, as used above, may include software, firmware, and / or microcode and may refer to programs, routines, functions, classes, and / or objects. The term shared processor includes a single processor that executes some or all of the code from multiple modules. The term group processor includes a processor that, in combination with additional processors, executes some or all of the code from multiple modules. The term shared memory includes a single memory that stores some or all of the code from multiple modules. The term group memory includes memory that, in combination with additional memories, stores some or all of the code from one or more modules. The term memory may be a subset of the term computer-readable medium.The term computer-readable medium encompasses non-transitory electrical and electromagnetic signals propagating through a medium and can therefore be considered tangible and non-transitory storage. Non-limiting examples of non-transitory storage include tangible computer-readable media, including non-volatile memory, magnetic storage, and optical storage.

[0018] The devices and methods described in this application may be implemented, in part or in whole, by one or more computer programs executed by one or more processors. The computer programs include processor-executable instructions stored on at least one non-transitory, tangible, computer-readable medium. The computer programs may also include and / or access stored data.

[0019] A software application (i.e., a software resource) may refer to computer software that causes a computing device to perform a task. In certain examples, a software application may be referred to as an "application," an "app," or a "program." Example applications include, but are not limited to, system diagnostic applications, system management applications, system maintenance applications, word processing applications, spreadsheet applications, messaging applications, media streaming applications, social networking applications, and gaming applications.

[0020] Non-transitory memory may be physical devices used to store programs (e.g., sequences of instructions) or data (e.g., program state information) on a temporary or permanent basis for use by a computing device. Non-transitory memory may be volatile and / or non-volatile addressable semiconductor memory. Examples of non-volatile memory include, but are not limited to, flash memory and read-only memory (ROM) / programmable read-only memory (PROM) / erasable programmable read-only memory (EPROM) / electronically erasable programmable read-only memory (EEPROM) (which, for example, is typically used for firmware such as boot programs).Examples of volatile memory include, but are not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), phase change memory (PCM), and disk or tape.

[0021] These computer programs (also known as programs, software, software applications, or code) contain machine instructions for a programmable processor and may be implemented in a high-level procedural and / or object-oriented programming language and / or assembly / machine language. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to a computer program product, a non-transitory computer-readable medium, an apparatus, and / or a device (e.g., magnetic disks, optical disks, memories, programmable logic devices (PLDs)) used to provide machine instructions and / or data to a programmable processor, which contains a machine-readable medium that embodies machine instructions as a machine-readable signal.The term “machine-readable signal” refers to a signal used to provide machine instructions and / or data to a programmable processor.

[0022] Various implementations of the systems and techniques described herein may be realized in digital electronics and / or optical circuitry, integrated circuitry, specially designed ASICs (Application Specific Integrated Circuits), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementation in one or more computer programs executable and / or interpretable in a programmable system including at least one programmable processor, which may be special-purpose or general-purpose and coupled to receive data and instructions from and send data and instructions to a memory system, at least one input device, and at least one output device.

[0023] The processes and logic flows described in this application text may be performed by one or more programmable processors, also referred to as data processing hardware, which execute one or more computer programs to perform functions by operating on input data and generating outputs. The processes and logic flows may also be performed by special-purpose logic circuitry, such as an FPGA (field-programmable gate array) or an ASIC (application-specific integrated circuit). Processors suitable for executing a computer program include, by way of example, both general-purpose and special-purpose microprocessors and one or more processors of any type of digital computer. In general, a processor will receive instructions and data from read-only memory and / or random access memory.The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer also includes, or is operatively coupled to, receive data from and / or send data to one or more mass storage devices for storing data, e.g., magnetic storage media, magneto-optical storage media, or optical storage media. However, a computer is not required to include such devices. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and storage devices, including, by way of example, semiconductor storage devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic storage devices, e.g., internal hard disks or removable storage devices; magneto-optical storage devices, and CD-ROM and DVD-ROM storage devices.The processor and memory may be supplemented by or incorporated into special-purpose logic circuitry.

[0024] To provide interaction with a user, one or more aspects of the disclosure may be implemented in a computer having a display device, e.g., a CRT (cathode ray tube), an LCD (liquid crystal display monitor), or a touch screen for displaying information to the user, and optionally, a keyboard and a pointing device, e.g., a mouse or trackball, with which the user can provide input to the computer. Other types of devices may also be used to provide interaction with a user; e.g., feedback provided to the user may include any form of sensory feedback, e.g.,visual feedback, auditory feedback, or haptic feedback; and input may be received from the user in any form including auditory, verbal, or tactile input. Additionally, a computer may interact with a user by sending documents to and receiving documents from a device used by the user; e.g., by sending web pages to an internet browser on a user's client device in response to requests received from the internet browser.

[0025] In the Fig. 1-6, an autonomous preference system 100 for a vehicle 10 includes a vehicle processor 200 configured with a trainable preference model 202 and one or more user profiles 204 stored in a memory 206 of the vehicle processor 200. The vehicle processor 200 is configured to monitor an interior 12 of the vehicle 10. The vehicle 10 includes a vehicle body 14 including the interior 12. The interior 12 defines a passenger compartment that may include a first row of seats 16 and a second row of seats 18. In other examples, fewer or more rows of seats may be included in the vehicle 10. The first row of seats 16 includes a driver seat 20 and a front passenger seat 22. The second row of seats 18 may include rear passenger seats 24. As described below, the vehicle processor 200 is configured to receive a signal indicating the occupancy of one or more of the seat rows 16, 18.

[0026] The interior 12 also includes environmental controls 30 that control a plurality of outputs 32 within the interior 12. For example, the environmental controls 30 may be directed to the lighting features 34, the temperature settings 36, the auxiliary features 38, the audio settings 40, and other environmental settings of the vehicle 10. The vehicle processor 200 may be communicatively coupled to the environmental controls 30 to collect environmental data 42. The environmental data 42 may collectively include data from the lighting features 34, the temperature settings 36, the auxiliary features 38, and the audio settings 40. The vehicle processor 200 may use the environmental data 42 in combination with the trainable preference model 202, as described below. For example, the vehicle processor 200 may use the environmental controls 30 to update the trainable preference model 202 and / or the user profiles 204.

[0027] In the Fig. 1-3, the vehicle processor 200 includes data processing hardware 208 configured to execute the trainable preference model 202 and the user preferences 210 associated with the corresponding user profiles 204. The trainable preference model 202 includes a model trainer 212 configured to obtain training data 214 for training the trainable preference model 202. The trainable preference model 202 is configured as a machine learning model 202 such that the model trainer 212 is configured to train the machine learning model 202 based on the training data 214. The model trainer 212 may retrieve the training data 214, for example, from the user profiles 204. The training data 214 includes, but is not limited to, the user preferences 210. The training data 214 may also include any type of data (e.g., text, images, audio, etc.) that the trainable preference model 202 is trained to receive. For example, the training data 214 may include sensor data 300 from a plurality of sensors 302 located within the interior 12 of the vehicle 10 and the environmental data 42 from the environmental controls 30. The trainable preference model 202 is trained to predict future user preferences 210 based on the training data 214. For example, the model trainer 212 may use the sensor data 300 to update the user preferences 210.

[0028] The plurality of sensors 302 are arranged at various locations within the interior 12. The sensors 302 may include, but are not limited to, weight sensors 304, capacitive sensors 306, image sensors 308, and audio sensors 310. For example, a camera or other imaging device 308 may be arranged within the interior 12 near the driver seat 20, and an additional imaging device 308 may be arranged near the rear passenger seats 24 to monitor the occupants 50 positioned in one or more of the rear passenger seats 24. The sensor data 300 collectively refers to the weight data 304a, the capacitive data 306a, the image data 308a, and the audio data 310a. For example, the image data may include image recognition data, image dimension data, and / or image mapping data. In some examples, the weight sensors 304 may be disposed in the driver seat 20, the front passenger seat 22, and the rear passenger seats 24.The weight sensors 304 are configured to detect a weight positioned on each of the respective seats 20-24 and communicate the weight data 304a to the vehicle processor 200 for analysis. Therefore, the weight sensors 304 are configured to provide discrimination data to identify one occupant 50 from another occupant.

[0029] The audio data 310a may be collected by the audio sensors 310 that detect the occupants 50 in the vehicle 10. The audio sensors 310 may include one or more microphones disposed within the interior 12 to collect the audio data 310a. For example, the audio data 310a may include talking, crying, barking, whining, and other occupant noises. As described below, the vehicle processor 200 receives the audio data 310a and may execute the trainable preference model 202 in response to the audio data 310a. The capacitive data 306a may include inputs from the occupant 50 on a display console 44 of the vehicle 10. The model trainer 212 may train the trainable preference model 210 with the capacitive data 306a to learn the input selections of a corresponding occupant 50.The trainable preference model 210 may first identify the occupant 50 based on the weight data 304a and / or the image data 308a and / or the audio data 310a and then perform functions of the vehicle 10 corresponding to the capacitive data 306a.

[0030] Similarly, the vehicle processor 200 receives the image data 308a, which can be used in combination with the trainable preference model 202. The image data 308a can include, but is not limited to, images of the occupants 50 within the vehicle 10. Although the image data 308a can confirm a location of the occupants within the vehicle 10, the image data 308a can also be used to monitor behaviors and actions within the vehicle 10. The trainable preference model 202 can be configured, as described in more detail below, to execute user preferences 210 in response to the image data 308a.

[0031] With reference to the Fig. 1-3, the vehicle processor 200 may be communicatively coupled to a user device 400 via a wired or wireless connection. For example, the user device 400 may be coupled to the display device console 44 of the vehicle 10. In some examples, the user device 400 may be communicatively coupled to the vehicle processor 200 via a network 404 that supports transmitting signals between the user device 400 and the vehicle processor 200. The user device 400 includes a navigation application 406 configured to provide a route 408 to the user. The user may store the routes 408 within the navigation application 406 or otherwise, and the navigation application 406 may be configured to detect or otherwise identify repeated routes 408 based on regularly visited locations.The repeated routes 408 may also be stored in the navigation application 406, and all routes 408 may be communicated with the vehicle processor 200 to be stored in the corresponding user profile 204.

[0032] The user device 400 may also be configured with a calendar 410, which may contain appointments, meetings, and other scheduled events. As described herein, the vehicle processor 200 may collect user data 412 from the user device 400, and the model trainer 212 may use the user data 412 as training data 214 for the trainable preference model 202. The user data 412 includes, but is not limited to, the route data 414, the calendar data 416, and the audio preferences 418. For example, the route data 414 includes the aforementioned routes 408, and the audio preferences 418 may include, but are not limited to, music selections, audiobook selections, podcast selections, and other applications or features of the user device 400 that may be selected by the user to output audio within the interior 12 of the vehicle 10.

[0033] It is also contemplated that, in some examples, the user may enter the user preferences 210 via the user device 400. The input of the user preferences 210 may then be communicated to the vehicle processor 200 and stored in the user profile 204. The user preferences 210 may, as mentioned above, include the user data 412 and may be communicated to the trainable preference model 202. The trainable preference model 202 may continuously update the user preferences 210, regardless of whether the user preferences 210 are entered by the user via the user device 400, the display console 44, and / or by the vehicle processor 200 over a period of time.

[0034] With further reference to the Fig. 1-3, examples are described with respect to the autonomous preference system 100. In some examples, the occupants 50 of the vehicle 10 may include a first occupant 50a, a second occupant 50b, and an animal occupant 50c. In other examples, the occupants 50 of the vehicle 10 may include the first occupant 50a, the second occupant 50b, and a child occupant 50d. The autonomous preference system 100 is configured to detect and identify the occupants 50 using the trainable preference model 202 and based on the user profiles 204 and the stored user preferences 210. It is contemplated that, upon initial use, the occupants 50 may input information into the display console 44 or via the user device 400 to set up each of the respective user profiles 204.Additionally or alternatively, the model trainer 212 may train the trainable preference model 202 over time and generate each of the corresponding user profiles 204 based on the training data 214.

[0035] For example, the trainable preference model 202 may generate the user preferences 210 based on the sensor data 300 and the environmental data 42 received from the data processing hardware 208 and the model trainer 212. The trainable preference model 202 may identify various user preferences 210 and automatically execute the user preferences 210 in response to a detected user. Therefore, the trainable preference model 202 is configured to autonomously execute the user preferences 210 based on the detected or otherwise identified user 50.

[0036] The computing hardware 208 is configured to identify the user based on the sensor data 300 and is configured to execute the user profile 204 in response to the identified user. In further examples, the computing hardware 208 may identify a new user based on the sensor data 300. The model trainer 212 is configured to update the trainable preference model 202 in response to the identified new user. For example, if a new user is identified, the computing hardware 208 generates a new user profile 204. The model trainer 212 may then train the trainable preference model 202 with the new user profile 204.If the new user profile 204 does not include user preferences 210, the data processing hardware 208 and / or the trainable preference model 202 may update the new user profile 204 as data is collected by the vehicle processor 200.

[0037] For example, the vehicle processor 200 may collect the audio data 310a from the interior 12. The data processing hardware 208 may execute the model trainer 212 in response to the audio data 310a to execute one or more of the user preferences 210. For example, the audio data 310a may be the child occupant 50d crying in the rear passenger seat 24. The audio data 310a may include the crying, and the trainable preference model 202 may identify one of the user preferences 210 corresponding to a calming routine 220. For example, the calming routine 220 may include the trainable preference model 202 executing the audio preferences 418 associated with the calming routine 220. For the example of the crying child occupant 50d, the trainable preference model 202 may select the audio preferences 418 of the calming routine 220 to relax or otherwise calm the child occupant 50d.

[0038] In some cases, the trainable preference model 202 may use the image data 308a to execute one or more of the user preferences 210. For example, the image data 308a may include content of the animal occupant 50c chewing on an object in the vehicle 10 that the first occupant 50a would otherwise have left untouched. The trainable preference model 202 may execute an alert or other notification to notify the first occupant 50a of the situation. It is also contemplated that the trainable preference model 202 may output audio preferences 418 of the user preferences 210, which may distract the animal occupant 50d from the action.In another example, the image data 308a may be used to detect that the occupant 50, which may include both the animal occupant 50d and the child occupant 50c, who may be out of sight of the driver occupant 50, is experiencing discomfort or may otherwise benefit from the calming routine 220. The trainable preference model 202 is configured to execute the calming routine 220 and / or notify the driver occupant 50 of the condition of the occupants 50 who are out of sight. The trainable preference model 202 is configured to execute other user preferences 210, such that the calming routine 220 is one example of multiple user preferences 210.

[0039] For example, the user profile 204 may also include routines 222. The routines 222 may be generated by the trainable preference model 202 based on the sensor data 300 and / or the environmental data 42 and / or the user data 412. The routines 222 may be configured to execute the user preferences 210 such that the computing hardware 208 may execute one or more user preferences 210 in response to a selection of the routine 222. For example, the routines 222 may include, but are not limited to, a morning routine, an afternoon routine, and an evening routine. The model trainer 212 may identify one of the user's routines 222 in response to the sensor data 300. The model trainer 212 may update the trainable preference model 202 to include the routine 222 and execute the routine 222 based on the sensor data 300.During operation of the vehicle 10, the model trainer 212 may continuously update the trainable preference model 202, which the routine 222 may update in response to the user inputs and / or the sensor data 300.

[0040] The model trainer 212 is configured to continuously and autonomously update the routines 222. For example, during operation of the vehicle 10, the model trainer 212 continuously receives various data from the sensors 302, the environmental controls 30, and the user device 400. The model trainer 212 uses the data to train the trainable preference model 202 to ultimately execute the user preferences 210 and the routines 222 independently of activation by a user input. Instead, the trainable preference model 202 is a machine learning model that autonomously adapts and executes the user preferences 210 and / or the routines 222 based on the received data.

[0041] In some examples, the received data may include route data 414. As mentioned above, route data 414 may be entered by the user or stored as route 408 within navigation application 406. In both examples, model trainer 212 may train trainable preference model 202 to recognize route 408. For example, occupant 50 may operate vehicle 10 in a direction associated with route 408, and trainable preference model 202 may autonomously execute user preferences 210 associated with route 408. In some examples, route 408 may direct vehicle 10 to a sporting event, which trainable preference model 202 may identify and associate with upbeat music from audio preferences 418.

[0042] The data processing hardware 208 may also be configured to identify repeated routes 408 from the navigation application 406 and the user device 400. The model trainer 212 updates the trainable preference model 202 in response to the repeated route 408 from the navigation application 406. In response to the identified repeated route 408, the trainable preference model 202 may select one or more of the user preferences 210.

[0043] The trainable preference model 202 may further confirm the route 408 and the selection of the user preferences 210 with the calendar data 416. For example, the calendar data 416 may include a scheduled event indicating the sporting event. Thus, the trainable preference model 202 may confirm the context of the route 408 prior to executing the user preferences 210. It is also contemplated that the model trainer 212 may identify a new route 408 based on the route data 414. For example, the user may begin a new class or regularly scheduled meeting that was not previously identified as a stored route 408. Therefore, the model trainer 212 may generate a new user preference 210 in response to the route data 414 and the calendar data 416.It is contemplated that the occupant 50 may adjust various features of the vehicle 10, such as the audio output, that would otherwise be selected by the trainable preference model 202. The model trainer 212 is configured to train and update the trainable preference model 202 in response to the adjustments made by the occupant 50, and subsequently learn the new user preferences 210.

[0044] In other examples, the model trainer 212 may learn the new user preferences 210 in response to a user input to the vehicle 10 and the sensor data 300 from the sensors 302. Further, as generally mentioned above, the data processing hardware 208 may be configured to determine a time of day 224. The trainable preference model 202 may select one or more user preferences 210 from the user profile 204. The trainable preference model 202 may use the determination of the time of day 224 to further select the routine 222 mentioned above.

[0045] As mentioned above, the data processing hardware 208 is configured to receive the weight data 304a, which may be stored in the corresponding user profiles 204, from the weight sensor 304. In some cases, the weight sensor 304 may detect a first weight 312 and at least one second weight 314. The first weight 312 may be associated with the first occupant 50a, and the at least one second weight 314 may be associated with the second occupant 50b. Additionally or alternatively, the second weight 314 may be associated with the animal occupant 50c and / or the child occupant 50d, such that the second weight 314 is distinguishable from the first weight 312.

[0046] While the first occupant 50a is depicted as the driver, the autonomous preference system 100 is configured to identify the repositioning of the occupants 50 within the vehicle 10. For example, the trainable preference model 202 may identify the difference between the first weight 312 and the second weight 314 and compare the detected weights 312, 314 with the stored user profiles 204. The trainable preference model 202 may further utilize the context from the sensor data 300 and the environmental data 42.

[0047] The user preferences 210 associated with the first occupant 50a may be adjusted based on a location or position of the first occupant 50a within the interior 12. For example, the trainable preference model 202 may detect that, although the first occupant 50a was previously in the driver seat 20, the first occupant 50a has shifted to the front passenger seat 22. In some examples, the trainable preference model 202 identifies the change in the location of the first occupant 50a based on the weight data 304a collected by the weight sensor 304. The weight data 304a may indicate that the first weight 312 previously detected in the driver seat 20 is detected in the front passenger seat 22. In response, the trainable preference model 202 may identify the user preferences for the first occupant 50a and execute the user preferences 210 relative to the front passenger seat 22.The trainable preference model 202 may confirm the change in location of the first occupant 50a by comparing the first weight 312 detected on the passenger seat 22 with the second weight 314 detected on the driver seat 20.

[0048] The trainable preference model 202 may execute the user preferences 210 associated with the first occupant 50a once the first occupant 50a is identified. For example, the trainable preference model 202 may adjust the environmental control 30 based on the environmental data 42 associated with the user profile 204 of the first occupant 50a. For example, the trainable preference model 202 may adjust the temperature settings 36 based on the temperature settings 36 stored in the respective user profile 204 for the first occupant 50a. The adjustment of the user preferences 210 may occur regardless of the position of the occupant 50 within the vehicle 10.

[0049] With further reference to the Fig. 1-6 are in the Fig. 4-6 flow diagrams of the autonomous preference system 100 are indicated. In a first step 600, the vehicle processor 200 receives the sensor data 300, the environmental data 42, and the user data 412 to classify the occupants 50. The trainable preference model 202 determines in 602 whether a user profile 204 is stored in memory 206. If no user profile 204 is identified, the trainable preference model 202 prompts the occupant 50 to create a user profile 204 in 604. The trainable preference model 202 identifies whether the user 50 has created a user profile 204 in 606. If the occupant 50 rejects the prompt, the trainable preference model 202 prevents the creation of a new user profile 204 until the next route 408 in 608. Fig. 5 shows the occupant 50 selecting to create a user profile 204.

[0050] Fig. 6 shows the continued flowchart. At 610, the trainable preference model 202 may suggest a setting of the user preferences 210 based on the user profile 204. If the trainable preference model 202 suggests a setting based on the occupant 50, the trainable preference model 202 then automatically selects user preferences 210 at 612 based on the training data 214. If the trainable preference model 202 does not suggest a setting, the trainable preference model 202 may then evaluate the route data 414 and / or the routines 222 and / or the sensor data 300 to detect the occupant 50 at 614-618.

[0051] In the Fig.1-6, the autonomous preference system 100 is configured to execute the user preferences 210 regardless of user input or any other setting by the occupant 50. The autonomous preference system 100 uses the model trainer 212 to continuously update and train the trainable preference model 202. The trainable preference model 202 uses machine learning to continuously revise the execution of the user preferences 210 and update the user preferences 210 in response to the sensor data 300 and the environmental data 42. Therefore, the autonomous preference system 100 advantageously adapts to the user preferences 210 based on an intelligent trainable preference model 202 to continuously adapt, monitor, and provide an improved user experience.

[0052] Several implementations have been described. Nevertheless, it should be understood that various modifications may be made without departing from the spirit and scope of the disclosure. Accordingly, other implementations are within the scope of the following claims.

[0053] The foregoing description has been provided for illustrative and descriptive purposes. It is not intended to be exhaustive or to limit the disclosure. Individual elements or features of a particular configuration are generally not limited to that particular configuration, but are, where applicable, interchangeable and may be used in a chosen configuration, even if not specifically shown or described. They may also be varied in many respects. Such variations are not to be considered a departure from the disclosure, and all such modifications are intended to be included within the scope of the disclosure.

Claims

[1] Autonomous vehicle preference system, which includes: a plurality of sensors arranged in an interior of a vehicle; and Computing hardware including a memory storing a user profile containing user preferences and a trainable preference model comprising a model trainer, wherein the computing hardware is configured to execute the model trainer in response to sensor data received from one or more of the plurality of sensors to update the user preferences in the user profile, and is configured to adjust the environmental controls of the vehicle based on the trainable preference model and the updated user preferences. [2] The autonomous vehicle preference system of claim 1, wherein the model trainer is configured to identify a user's routine in response to the sensor data and is configured to update the trainable preference model and execute the routine. [3] An autonomous vehicle preference system according to claim 2, wherein the routine comprises one or more of the user preferences. [4] An autonomous vehicle preference system according to claim 2, wherein the model trainer is configured to update the routine during operation of the vehicle in response to user inputs and / or the sensor data. [5] The autonomous vehicle preference system of claim 1, wherein the data processing hardware is configured to identify a user based on the sensor data and is configured to execute the user profile in response to the identified user. [6] The autonomous vehicle preference system of claim 5, wherein the data processing hardware is configured to identify a new user based on the sensor data, and the model trainer is configured to update the trainable preference model in response to the identified new user. [7] The autonomous vehicle preference system of claim 1, further comprising a user device communicatively coupled to the computing hardware and configured to transmit route data and / or calendar data, wherein the trainable preference model is configured to generate a new user preference based on the route data and / or the calendar data. [8] An autonomous vehicle preference system according to claim 1, wherein the trainable preference model is a machine learning model. [9] Autonomous vehicle preference system according to claim 1, wherein the sensor data includes audio data and / or image data and / or weight data. [10] The autonomous vehicle preference system of claim 9, wherein the data processing hardware is configured to execute the model trainer in response to the audio data.