In recent years, popularity and usage of on-demand transportation matching systems have significantly grown. Indeed, the proliferation of web and mobile applications easily enable requesting individuals to request transportation from transportation providers. These on-demand transportation matching systems facilitate the completion of thousands and thousands of transportation requests each day. The provided transportation is dependent on the vehicles operated by transportation providers. The vehicles, in turn, require regular service in order to ensure that they can operate in a safe and efficient manner. However, traditional vehicle service centers (e.g., businesses that perform maintenance and other services on vehicles) suffer from a number of disadvantages, making them incompatible with the dynamic and demanding nature of on-demand transportation matching systems.
For example, traditional vehicle service centers are inefficient and prone to backlogs and delays. To illustrate, traditional service centers typically provide options for vehicle owners to make appointments ahead of time or arrive without an appointment. However, even for customers that make appointments beforehand, traditional vehicle service centers are notoriously prone to delays and almost never provide customers with reliable time estimates for completing the necessary services. Furthermore, the delays and unpredictability of traditional service centers are compounded by an inability to adapt to unforeseen circumstances or changes in services.
These and other disadvantages exist with respect to traditional vehicle service centers.
This disclosure describes one or more embodiments of methods, non-transitory computer readable media, and systems that solve problems associated with conventional service centers. As will be described in more detail below, the disclosed systems can intelligently and dynamically determine how to manage display devices of a vehicle service center to ensure that vehicles are serviced efficiently and without the delays typical to traditional vehicle service centers. For example, the disclosed vehicle service center includes sequential stations, through which vehicles progress, stopping at each station, where tasks are performed in accordance with services for the vehicles. The disclosed systems manage the display devices of the vehicle service center to ensure that the vehicles progress through the sequential stations in accordance with a predefined progression rate (e.g., an amount of time vehicles spend at their stations before progressing to the next station or out of the vehicle service center).
For example, in one or more embodiments, a vehicle service system analyzes information associated vehicles to be serviced at a vehicle service center comprising sequential stations through which vehicles progress in accordance with a predefined progression rate. For example, the vehicle service system can analyze information associated with services that will be performed on each of the vehicles (e.g., to identify tasks associated with the services). Based on the information associated with the vehicles and based on the predefined progression rate, the vehicle service system can determine an allocation of tasks to be performed at each of the sequential stations. For example, for a given stage of progression with a vehicle at each of the stations, the vehicle service center can determine which tasks will be performed at each of the stations for the respective vehicles. Based on the task allocation and the predefined progression rate, the vehicle service center can determine how to allocate resources across the stations in order to complete the allocated tasks in the time allotted by the predefined progression rate. For example, the vehicle service center can determine how to allocate technicians as well as mechanical components—such as robots, equipment, or other machines—across the stations to complete the allotted tasks. In some embodiments, the vehicle service system determines an estimated progression rate for a given task allocation and a given resource allocation, and then compares the estimated progression rate to the predefined progression rate.
In turn, the disclosed systems can customize, for display on display devices within the vehicle service center for a given stage of progression, task allocation user interfaces in accordance with the task allocation. In addition, the vehicle service system can monitor a completion progress for the task allocation and, based on the completion progress, generate an adjusted task allocation for the given stage of progression. The vehicle service system can then update the task allocation user interfaces based on the adjusted task allocation for the given stage of progression. In this manner, if completion of the tasks assigned to a particular station falls behind schedule, the vehicle service system can dynamically modify display devices to present the adjusted task allocation and/or resource allocation to ensure that the predefined progression rate is satisfied or that any failure to satisfy the predefined progression rate is minimized.
Accordingly, and as is explained in more detail below, the disclosed features resolve many of the inefficiencies and uncertainties associated with conventional vehicle service centers.
This disclosure describes one or more embodiments of a vehicle service center and corresponding vehicle service system that dynamically and flexibly updates task allocations on display devices within the vehicle service center to improve its efficiency. As disclosed in more detail below, a vehicle service center can include a set of sequential stations through which vehicles proceed in a sequential manner (e.g., starting at a first station, then moving to a second station, and so on) with various services being performed at each station. In some embodiments, the disclosed vehicle service system can intelligently allocate tasks and resources to ensure that the vehicles progress through the stations in accordance with a predefined progression rate. Accordingly, the vehicle service system stations and allocates resources to each of the stations to assist in completing the allocated tasks.
To illustrate, according to an example embodiment, a vehicle service system analyzes information associated with vehicles to be serviced at a vehicle service center. Based on the analyzed information, the vehicle service system can determine a respective set of tasks for completion at each of the stations in accordance with a predefined progression rate. In addition, the vehicle service system can customize task allocation user interfaces on display devices within the vehicle service center to reflect the respective set of tasks and monitor a completion progress thereof. In turn, the vehicle service system can generate (e.g., as needed based on the completion progress) modified or adjusted versions of the respective set of tasks to ensure that services are performed within the time allotted by the predefined progression rate.
As mentioned above, according to the embodiments disclosed herein, a vehicle service center includes a set of sequential stations through which vehicles progress, stopping at each station. In some embodiments, the stations are arranged in a line, end to end. A vehicle to be serviced enters the vehicle service center into a first station, and then moves station to station receiving services at each station until it leaves the last station in the sequence. In some embodiments, the vehicle service center includes three stations. However, the vehicle service center can include any number of stations arranged in a sequence. Each of the stations can be equipped with various tools, parts, and equipment for performing service tasks. The stations can be equipped differently, so that different services can be performed at each station, or the stations can be equipped to each perform any available service. Additional details regarding the vehicle service center and its stations are provided below.
As further mentioned above, the vehicle service system can intelligently allocate tasks and resources in order to ensure that vehicles progress through the stations of the vehicle service center in accordance with a predetermined progression rate. As used herein, the term “progression rate” refers to a rate at which vehicles progress through the stations of a vehicle service center. In other words, the progression rate represents how much time vehicles spend at a station before progression on to the next station (or out of the vehicle service center if a vehicle is in the last station). In some embodiments, the progression rate is an average progression rate for a vehicle across multiple stations and/or multiple vehicles across one or more stations. In other embodiments, a progression rate can represent a rate for a single vehicle at a single station or for a single stage of progression by multiple vehicles across multiple stations. The vehicle service system can monitor the completion of services at each station of the vehicle service center to determine the progression rate of one or more vehicles or for the vehicle service center in general. Furthermore, the vehicle service system can determine multiple progression rates corresponding to discrete periods of time (e.g., each hour, each day, each week, or each month).
As used herein, the term “predefined progression rate” refers to a target or maximum progression rate that has been set for a vehicle service center. For example, the predefined progression rate can define a per-station maximum amount of time to perform services on one or more vehicles. The predefined progression rate can apply to every station and every vehicle, or can be an average across multiple stations and multiple vehicles. In some embodiments, the predefined progression rate is the same for each station so that the vehicles progress consistently from station to station without being delayed by vehicles in the other stations. Example predefined progression rates include 5 minutes per station, 6 minutes per station, 7 minutes per station, 8 minutes per station, 9 minutes per station, and 10 minutes per station, although the predefined progression rate can be any progression rate. In some embodiments, the predefined progression rate is set by an administrator, such as a vehicle service center manager. In other embodiments, the vehicle service system can automatically set the predefined progression rate based on the services to be performed, the capabilities of the vehicle service center, and/or other circumstances associated with the vehicle service center. In additional embodiments, the predefined progression rate can be variable and/or dynamically set by the vehicle service system from time to time.
As indicated above, the vehicle service system can analyze information associated vehicles scheduled for service at a vehicle service center. For example, the vehicle service system can analyze information provided by vehicle owners, information associated with past services performed on the vehicles, and/or information provided by manufacturers of the vehicles. Based on the analyzed information, the vehicle service system can determine the services that need to be performed at the vehicle service center, the tasks required to perform each service, and the parts, tools, and equipment necessary to perform each service. The vehicle service system can further determine the capabilities of each station of the vehicle service center to determine which stations are capable of performing each of the tasks to be performed on each vehicle.
Based on the information associated with the vehicles scheduled for service and the services to be performed, the vehicle service system can determine an allocation of tasks to be performed at each station of the vehicle service center. In particular, for a given stage of progression, with vehicles at each station, the vehicle service system can determine, for example, a first set of tasks to be performed at a first station on a first vehicle, a second set of tasks to be performed at a second station on a second vehicle, and a third set of tasks to be performed at a third station on a third vehicle. Similarly, the vehicle service system can determine an allocation of tasks to be performed on a vehicle at each of the multiple stations. To illustrate, the vehicle service system can determine a first set of tasks to be performed on a vehicle at a first station, a second set of tasks to be performed on the vehicle when it moves to a second station, and a third set of tasks to be performed on the vehicle when it moves to a third station.
Furthermore, the vehicle service system can intelligently allocate resources to each of the stations of the vehicle service center. For example, the vehicle service system can identify the resources (e.g., technicians and components, such as machines) available to be allocated, can identify the tasks to be performed at each station based on the task allocation, and then determine the resources required to perform the allocated tasks in accordance with the predefined progression rate. The resource allocation can include an allocation of one or more technicians to each of the stations. Furthermore, the resource allocation can include an allocation of one or more machines, such as remotely controlled or autonomous robots or equipment to one or more stations. In addition to assigning the technicians and one or more machines to the stations, the vehicle service system can assign each of the technicians and/or machines one or more tasks to perform at their assigned stations. In particular, the vehicle service system can split the tasks allocated to a particular station between one or more technicians and/or one or more machines.
In some embodiments, the vehicle service system can allocate tasks and/or resources based on time estimates for completing services. For example, the vehicle service system can determine an estimated time to complete each task corresponding to each service to be performed. In some embodiments, the vehicle service system determines estimated times for tasks based on historical data gathered from completing the tasks over time. For example, the vehicle service system can determine the estimated times by averaging observed times for completing each task or generating estimated times using a machine learning model trained to estimate a time to complete a task. Using the estimated times for completing tasks, the vehicle service system can determine a total amount of time (e.g., a total number of minutes) required to perform a given service, a total amount of time to perform the tasks allocated to a given station, and/or the total amount of time to perform tasks across all the stations for a given stage of progression. Based on the estimated times, the vehicle service system can determine how to allocate tasks across stations and/or how to allocate resources across the stations. Furthermore, the vehicle service system can determine an estimated progression rate for a given task allocation and resource allocation. The vehicle service system can then compare the estimated progression rate to the predefined progression rate to determine whether the task allocation and resource allocation are suitable or whether an alternative task allocation and resource allocation is required to satisfy the predefined progression rate. In some embodiments, the vehicle service system iteratively determines task allocations and resource allocations, along with corresponding estimated progression rates, to determine a task allocation and resource allocation with an estimated progression rate that satisfies the predefined progression rate and/or is better than the progression rates for other task and resource allocations. Accordingly, the vehicle service system can identify a task allocation and resource allocation that is likely to result in a progression rate that satisfies the predefined progression rate.
In additional embodiments, the vehicle service system can dynamically respond to various events that might negatively affect vehicle service or jeopardize adherence to a predefined progression rate. In particular, the vehicle service system can monitor a completion status of one or more tasks at each station. Based on the completion status of the one or more tasks, the vehicle service system can update an estimated progression rate and compare the updated estimated progression rate to the predefined progression rate. If the updated estimated progression rate exceeds or fails to satisfy the predefined progression rate, the vehicle service system can dynamically modify the task allocation and/or resource allocation. For example, the vehicle service system can dynamically (e.g., in real time) reassign one or more tasks to a different technician or machine, or to a different stage of progression (e.g., to be completed when the vehicle moves to its next station). To illustrate, the vehicle service system may reassign a task to the one or more machines and cause the one or more machines to complete the reassigned task. In these or other embodiments, the reassigned task may have previously been assigned to a technician or another machine.
Further, in some embodiments, the vehicle service center can customize task allocation user interfaces presented on one or more display devices within the vehicle service center. Customization of task allocation user interfaces can include generating, for display at a first display device and a second display device, a first set of tasks and a second set of tasks, respectively. For example, the vehicle service system may customize the task allocation user interface at the first display device to display tasks for completing one or more services for a first vehicle and at a first station. Likewise, the vehicle service system may customize the task allocation user interface at the second display device to display tasks for completing one or more other services for a second vehicle and at a second station.
In some embodiments, and as mentioned above, the vehicle service system can reassign tasks, for example, based on the completion progress of tasks indicating an estimated progression rate exceeding the predefined progression rate. In turn, the vehicle service system can update the one or more task allocation user interfaces based on a respective set of adjusted tasks to ensure completion of the respective set of adjusted tasks within a time allotment set according to the predefined progression rate. As an example, a set of adjusted tasks may include tasks shifted within a user interface on a same display device (e.g., from being allocated to one technician to being allocated to another technician and/or machine) or tasks offloaded to an entirely different user interface and display device. For instance, the vehicle service system may customize, for display on a first display device within the vehicle service center, a first task allocation user interface in accordance with a first allocation of tasks. Then, in response to a completion progress for the first allocation of tasks indicating failure to satisfy the predefined progression rate, the vehicle service system can generate, for display on the first display device, a second task allocation user interface in accordance with a second allocation of tasks different from the first allocation of tasks.
In accordance with the foregoing and as will be explained in more detail below, the vehicle service system can ensure that vehicles progress through sequential stations of a vehicle service center in accordance with a predefined progression rate, notwithstanding changes in circumstances or potential service delays. This intelligent approach creates predictable wait times and enhances user experiences for vehicle owners. Further, the vehicle service system can reduce system inefficiencies associated with unstructured, spontaneous resource allocation. Additionally, the vehicle service system can reduce an amount of user interactions with user interfaces to manually and subjectively manage resources within a vehicle service center. Accordingly, the embodiments disclosed herein improve the efficiency of a dynamic transportation matching system as it relates to managing service of the vehicles providing transportation services.
Additional features and advantages of one or more embodiments of the present disclosure are outlined in the description which follows.
Turning to the figures,
In more detail, the vehicle service system 102 can analyze vehicle service center data associated with the vehicle service center 105, such as a current resource availability of parts, tools, machines, technicians, etc. In addition, the vehicle service system 102 can analyze vehicle data corresponding to the vehicles 110 in the service queue 145 of the vehicle service center 105. The vehicle service system 102 may access the vehicle data as information associated with the vehicle service center 105 or otherwise obtain the vehicle data from a manufacturer of the vehicles 110 themselves, or transportation provider devices associated therewith. The vehicle data may include information related to respective services of the vehicles 110.
Based on, for example, the vehicle service center data, the vehicle data, and/or the services for the vehicles 110, the vehicle service system 102 can determine a task allocation indicating tasks to be performed for each of the vehicles 110 and at each of the stations. The task allocation is arranged such that respective completion of the one or more services for each of the vehicles 110 and at each of the stations occurs within a corresponding stage of progression (e.g. of seven minutes) according to the predefined progression rate (e.g., of seven minutes per station). In addition, the vehicle service system 102 can cause one or more display devices at the vehicle service center 105 to customize a task allocation user interface with the particular task allocation generated as described above.
Further, in the event of a service issue potentially delaying timely completion of one or more services for a vehicle within a given stage of progression, the vehicle service system 102 can reallocate resources among the stations of the vehicle service center. In some embodiments, the vehicle service system 102 can reallocate resources by dynamically modifying task allocations (e.g., in real-time during the given stage of progression) and, in turn, cause the one or more display devices of the vehicle service center 105 to present a modified task allocation user interface according to the adjusted task allocations. In this manner, the vehicle service system 102 can ensure the vehicles 110 progress through the vehicle service center according to the predefined progression rate.
Additionally, and as mentioned above, the vehicle service system 102 can intelligently dispatch the vehicles 110 to the vehicle service center 105. Alternatively, the dispatching may be performed by a dynamic transportation matching system that receives transportation match requests from a requestor computing device and provides a generated transportation match to a provider computing device and/or one of the vehicles 110. Vehicles 110 can also transport the requestor associated with the requestor computing device to a location specified in the transportation match request.
Furthermore, although not depicted in
As further shown, in one or more embodiments, the vehicle service system 102 is independent of a dynamic transportation matching system implemented on one or more additional server(s), which are therefore pictorially omitted from
Further, in these or other embodiments, the vehicle service system 102 may perform one or more acts of the present disclosure described in conjunction with a dynamic transportation matching system or a network environment associated therewith as described more in relation to
As mentioned above, the vehicle service system 102 can generate a task allocation and resource allocation.
In more detail, the resource allocation includes various technicians and a component allocation of machines 230a-230g and components 236a-236c. By way of example, the component allocation of machines 230a-230g comprises equipment and robots, such as an autonomous oil drain 230a, robots 230b and 230f, programmable hoists 230c-230d, tire changing equipment 230e, and a power washer 230g. Additionally, for example, the component allocation of components 236a includes parts such as new oil containers and oil filters, and various tools for changing oil of a vehicle. Similarly, for example, the components 236b include parts such as flat repair patches, wheel-balance weights, valve stems, pressure sensors, etc., and various tools such as an air gun, lug nut sockets, and torque wrench for performing a tire rotation. Further, the component allocation of the components 236c includes parts such as spray bottles, cleaner, windshield wiper blades, wiper fluid, brake fluid, engine belts, etc., and various tools for performing a routine service such as a vacuum.
In these or other embodiments, the vehicle service system 102 dynamically manages the component allocation of the machines 230a-230g and the components 236a-236c, for example, according to the service queue and associated vehicles (e.g., the vehicles 204-208) with corresponding services. For instance, the vehicle service system 102 may provide instructions to the robot 230b to stock, for the given stage of progression, the tool chests and the parts shelves with the components 236a-236c that correspond to the respective services for the vehicle 208, the vehicle 206, and the vehicle 204. Likewise, the vehicle service system 102 may instruct one or more of the machines 230a-230g to be positioned, for the given stage of progression, in certain stations in accordance with the services of the vehicles 204-208.
In a next stage of progression, a next vehicle enters Station A, the vehicle 208 and the vehicle 206 advance to the next stations, and the vehicle 204 exits the vehicle service center. Accordingly, the vehicle service system 102 may instruct the robot 230b to stock, for the next stage of progression, the tool chests and the parts shelves with the components 236a-236c that correspond to the respective services for the next vehicle, the vehicle 208, and the vehicle 206, and so forth. Likewise, the vehicle service system 102 may instruct one or more of the machines 230a-230g to be positioned, for the next stage of progression, in certain stations in accordance with the services of the next vehicle and the vehicles 206-208. In this manner, the vehicle service system 102 can dynamically manage the component allocation, including inventory, real-time stocking/availability, positioning, etc. for the machines 230a-230g and the components 236a-236c in accordance with the service queue (i.e., specific vehicles and their corresponding services).
As additionally shown in
Furthermore, and in accordance with the resource allocation of tasks and components, the vehicle service system 102 can monitor, via monitoring devices 232, a completion progress of tasks for performing one or more services of each vehicle during a given stage of progression. The monitoring devices 232 may include one or more types of video surveillance devices. Additionally or alternatively, the monitoring devices 232 may include wearable devices (not shown) and/or personal client devices (not shown) that are configured for receiving audio and/or video inputs. Thus, in some embodiments, the vehicle service system 102 may track completed tasks, one or more current tasks in-progress, and tasks yet begun (e.g., on a task-allocation basis for each technician and machine).
To track a completion progress of tasks, the vehicle service system 102 may use image recognition techniques to process (in real-time) video data comprising interactions between the vehicles 204-208 and those instructed to perform tasks according to a task allocation, namely the machines 230a-230g (e.g., the robots and equipment) and the technicians. For instance, the vehicle service system 102 may use video data action markers that indicate what tasks are being performed, such as video data comprising an action marker of opening a vehicle hood, taking lug nuts off of a wheel, hoisting the vehicle into the air, etc. Accordingly, in some embodiments, the vehicle service system 102 includes artificial intelligence systems capable of comparing training data with ground truth data to learn which interactions (e.g., action markers) correspond to performance of which tasks. Additionally or alternatively (in the embodiment of a personal monitoring device 232 such as a cell phone, tablet, smart watch, body camera, or smart eyewear), the vehicle service system 102 may receive from the personal monitoring device (i) audio confirmation of task completion from technicians such as voice confirmations, (ii) haptic feedback from a tap or swipe gesture to indicate a task is in-progress or complete, (iii) a visual cue, etc. In this manner, the vehicle service system 102 can receive, from one or more of the monitoring devices 232, an indication of a completed task associated with a task allocation. Additionally or alternatively, the machines 230a-230g may send communications to the vehicle service system 102 regarding the completion progress of one or more tasks (e.g., via a wireless connection such as a Bluetooth® connection).
In accordance with the monitoring of the completion progress of tasks prescribed by a resource allocation, the vehicle service system 102 may update one or more displays in the vehicle service center, for example, the resource allocation displays 228a-228c and the vehicle service center manager client device 234 (e.g., as described more below in relation to
Further, based on the monitored completion status of tasks, the vehicle service system 102 can detect (via a comparison) that an estimated progression rate is on pace with or likely satisfies the predefined progression rate, or else off pace with or is likely to exceed the predefined progression rate. For example, the vehicle service system 102 may compare an amount of time remaining in a given stage of progression with an estimated time needed to perform one or more remaining tasks of a service. If the estimated time needed to perform one or more remaining tasks exceeds the remaining time in the given stage of progression, the vehicle service system 102 may determine that a current progression of the one or more vehicles will likely fail to satisfy the predefined progression rate of vehicles through the stations of the vehicle service center.
As just discussed, the vehicle service center can update, based on the monitored completion progress of tasks, one or more displays in the vehicle service center.
As shown in
In these or other embodiments, the lighting element 304 visually indicates a representation of how a current progression of the one or more vehicles compares to the predefined progression rate of vehicles through the stations of the vehicle service center. For example, the vehicle service system 102 may cause the lighting element 304 to emit a green-colored light (or no light as depicted in
In more detail,
Accordingly, the vehicle service system 102 can reassign one or more tasks among the technicians and/or the machines 230a-230g to ensure the problematic wheel does not interfere with a progression of the vehicles through the vehicle service center according to the predefined progression rate. Then, based on the reassignment of tasks, the vehicle service system 102 can update the task allocation user interface 306a in
Specifically, as shown for example in
As mentioned above, the vehicle service system 102 can utilize resource allocation displays to dynamically present task allocations in the vehicle service center in addition to utilizing personal monitoring devices for evaluating a completion progress of tasks.
As further shown in
As the technician performs each of the tasks 406, the technician can provide input via a feedback mechanism of the technician device 402 to confirm completion of the tasks 406. Additionally or alternatively, the vehicle service system 102 may receive image/video data from the technician device 402 confirming completion of the tasks 406 (e.g., as described above in conjunction with the monitoring devices 232 of
Additionally, the instructions 408 include by way of example some instructions for performing a task on a vehicle (e.g., to perform a next task 406). Given an uncompleted task 406 of “Check serpentine belt,” the instructions 408 can correspond to step-wise instructions for completing the task 406 of “Check serpentine belt.” Further, the AR display 404 includes an AR pointer 410 that is associated with the instructions 408. For example, the AR pointer 410 may identify, from within the AR display 404, real-world objects and/or people in a field-of-view of the technician device 402 to aid the technician perform the tasks 406 (in this instance, identify cracks in the serpentine belt requiring replacement of the serpentine belt). Additionally or alternatively, the technician device 402 may use simultaneous localization and mapping (SLAM) technology during servicing of the vehicle to detect the completion of tasks or problems with a vehicle.
As mentioned above, the vehicle service system 102 can communicate with a vehicle service center manager client device 234, for example, regarding a task allocation of one or more vehicles in a service queue.
As shown in
As an example, the management user interface 504 may receive an input at the position-adjustment tab 506 for the 2019 Chevrolet Volt associated with Luke Holmes to move this vehicle between vehicles associated with Ben Johnson and Adi Green. In response to such a modification, the vehicle service system 102 may provide an adjusted task allocation to the client device 502 and/or one or more other display devices in the vehicle service center (e.g., the task allocation displays 228a-228c of
Further, in some embodiments, the management user interface 504 may disallow positional adjustment of vehicles in the virtual queue once in-service as reflected in the “Progress Time” column. Additional features of the management user interface 504 are herein contemplated. For example, the management user interface 504 can include various tabs of vehicle categories in the virtual queue (e.g., “Active and Upcoming,” “Check In,” “In Progress,” “Completed,” “Canceled,” etc.). In addition, information provided within the management user interface 504 in some embodiments is searchable.
Additionally or alternatively, in some embodiments, the vehicle service system 102 may suggest to the client device 502, in response to the monitoring of the completion progress of tasks, one or more selectable options for modifying a resource allocation. For example, the vehicle service system 102 may cause the management user interface 504 to display a listing or other graphical representation of resource reallocation options, and request the user to make a selection. If no selection is made within a threshold period of time, the vehicle service system 102 may auto-select one of the recommended options and proceed with the resource reallocation accordingly.
Further to
In these or other embodiments, the vehicle service system 102 can receive a selected response at the menu 510 and, in turn, place the associated vehicle in a corresponding service queue. For example, the vehicle service system 102 may opt to associate a vehicle in for “collision repair” with a service queue having a different predefined progression rate than another vehicle in for “maintenance.” Alternatively, a vehicle in for a “car wash” may proceed through the same service queue as other vehicles in for “maintenance,” in which case the vehicle service system 102 would display, at one or more stations in associated with the “car wash” vehicle, an indication representing no maintenance services are needed or carwash only. Thus, in some embodiments, each selectable option in the menu 510 may be associated with one or more service queues and/or predefined progression rates.
Each of the components 602-612 of the vehicle service system 102 can be implemented using a computing device including at least one processor executing instructions that cause the performance of the processes described herein. In some embodiments, the components 602-612 of the vehicle service system 102 can be implemented on a single server or across multiple servers. Additionally or alternatively, a combination of one or more server devices and one or more computing devices can implement the components described herein in a different arrangement than illustrated in
As illustrated in
Also as illustrated in
Additionally illustrated in
As further illustrated in
Additionally illustrated in
As shown, the series of acts 700 includes an act 702 of analyzing information associated with one or more vehicles scheduled for service at a vehicle service center comprising a set of sequential stations. The series of acts 700 further includes an act 704 of determining, based on the information associated with the one or more vehicles, a respective set of tasks for completion at each of the sequential stations in accordance with a predefined progression rate. Further, an act in the series of acts 700 includes an act 706 of customizing, for display on one or more display devices within the vehicle service center, one or more task allocation user interfaces in accordance with the respective set of tasks.
In addition, an act in the series of acts 700 includes an act 708 of monitoring, relative to the predefined progression rate, a completion progress for the respective set of tasks. In these or other embodiments, the completion progress for the respective set of tasks indicates an estimated progression rate of the one or more vehicles through the sequential stations exceeds the predefined progression rate. The series of acts 700 additionally includes an act 710 of generating, based on the completion progress, a respective set of adjusted tasks. The series of acts 700 further includes an act 712 of updating the one or more task allocation user interfaces based on the respective set of adjusted tasks.
It is understood that the outlined acts in the series of acts 700 are only provided as examples, and some of the acts may be optional, combined into fewer acts, or expanded into additional acts without detracting from the essence of the disclosed embodiments. As an example of one or more additional or alternative acts not shown in
As another example of one or more additional or alternative acts not shown in
Further, another example of one or more additional or alternative acts not shown in
In yet another example of one or more additional or alternative acts not shown in
As shown in
In particular embodiments, the processor(s) 802 includes hardware for executing instructions, such as those making up a computer program. As an example, and not by way of limitation, to execute instructions, the processor(s) 802 may retrieve (or fetch) the instructions from an internal register, an internal cache, memory 804, or a storage device 806 and decode and execute them.
The computing device 800 includes memory 804, which is coupled to the processor(s) 802. The memory 804 may be used for storing data, metadata, and programs for execution by the processor(s). The memory 804 may include one or more of volatile and non-volatile memories, such as Random-Access Memory (“RAM”), Read-Only Memory (“ROM”), a solid-state disk (“SSD”), Flash, Phase Change Memory (“PCM”), or other types of data storage. The memory 804 may be internal or distributed memory.
The computing device 800 includes a storage device 806 includes storage for storing data or instructions. As an example, and not by way of limitation, the storage device 806 can include a non-transitory storage medium described above. The storage device 806 may include a hard disk drive (HDD), flash memory, a Universal Serial Bus (USB) drive or a combination these or other storage devices.
As shown, the computing device 800 includes one or more I/O interfaces 808, which are provided to allow a user to provide input to (such as user strokes), receive output from, and otherwise transfer data to and from the computing device 800. These I/O interfaces 808 may include a mouse, keypad or a keyboard, a touch screen, camera, optical scanner, network interface, modem, other known I/O devices or a combination of such I/O interfaces 808. The touch screen may be activated with a stylus or a finger.
The I/O interfaces 808 may include one or more devices for presenting output to a user, including, but not limited to, a graphics engine, a display (e.g., a display screen), one or more output drivers (e.g., display drivers), one or more audio speakers, and one or more audio drivers. In certain embodiments, I/O interfaces 808 are configured to provide graphical data to a display for presentation to a user. The graphical data may be representative of one or more graphical user interfaces and/or any other graphical content as may serve a particular implementation.
The computing device 800 can further include a communication interface 810. The communication interface 810 can include hardware, software, or both. The communication interface 810 provides one or more interfaces for communication (such as, for example, packet-based communication) between the computing device and one or more other computing devices or one or more networks. As an example, and not by way of limitation, communication interface 810 may include a network interface controller (NIC) or network adapter for communicating with an Ethernet or other wire-based network or a wireless NIC (WNIC) or wireless adapter for communicating with a wireless network, such as a WI-FI. The computing device 800 can further include a bus 812. The bus 812 can include hardware, software, or both that connects components of the computing device 800 to each other.
This disclosure contemplates any suitable network 904. As an example, and not by way of limitation, one or more portions of the network 904 may include an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular telephone network, or a combination of two or more of these. The network 904 may include one or more networks 904.
Links may connect the client device 906, the transportation matching system 902, and the vehicle subsystem 908 to the communication network 904 or to each other. This disclosure contemplates any suitable links. In particular embodiments, one or more links include one or more wireline (such as for example Digital Subscriber Line (DSL) or Data Over Cable Service Interface Specification (DOCSIS), wireless (such as for example Wi-Fi or Worldwide Interoperability for Microwave Access (WiMAX), or optical (such as for example Synchronous Optical Network (SONET) or Synchronous Digital Hierarchy (SDH) links. In particular embodiments, one or more links each include an ad hoc network, an intranet, an extranet, a VPN, a LAN, a WLAN, a WAN, a WWAN, a MAN, a portion of the Internet, a portion of the PSTN, a cellular technology-based network, a satellite communications technology-based network, another link, or a combination of two or more such links. Links need not necessarily be the same throughout the network environment 900. One or more first links may differ in one or more respects from one or more second links.
In particular embodiments, the client device 906 may be an electronic device including hardware, software, or embedded logic components or a combination of two or more such components and capable of carrying out the appropriate functionalities implemented or supported by the client device 906. As an example, and not by way of limitation, a client device 906 may include any of the computing devices discussed above in relation to
In particular embodiments, the client device 906 may include a transportation service application or a web browser, such as MICROSOFT INTERNET EXPLORER, GOOGLE CHROME or MOZILLA FIREFOX, and may have one or more add-ons, plug-ins, or other extensions, such as TOOLBAR or YAHOO TOOLBAR. A user at the client device 906 may enter a Uniform Resource Locator (URL) or other address directing the web browser to a particular server (such as server), and the web browser may generate a Hyper Text Transfer Protocol (HTTP) request and communicate the HTTP request to server. The server may accept the HTTP request and communicate to client device 906 one or more Hyper Text Markup Language (HTML) files responsive to the HTTP request. The client device 906 may render a webpage based on the HTML files from the server for presentation to the user. This disclosure contemplates any suitable webpage files. As an example, and not by way of limitation, webpages may render from HTML files, Extensible Hyper Text Markup Language (XHTML) files, or Extensible Markup Language (XML) files, according to particular needs. Such pages may also execute scripts such as, for example and without limitation, those written in JAVASCRIPT, JAVA, MICROSOFT SILVERLIGHT, combinations of markup language and scripts such as AJAX (Asynchronous JAVASCRIPT and XML), and the like. Herein, reference to a webpage encompasses one or more corresponding webpage files (which a browser may use to render the webpage) and vice versa, where appropriate.
In particular embodiments, the transportation matching system 902 may be a network-addressable computing system that can host a ride share transportation network. The transportation matching system 902 may generate, store, receive, and send data, such as, for example, user-profile data, concept-profile data, text data, ride request data, GPS location data, provider data, requester data, vehicle data, or other suitable data related to the ride share transportation network. This may include authenticating the identity of providers and/or vehicles who are authorized to provide ride services through the transportation matching system 902. In addition, the transportation service system may manage identities of service requestors such as users/requesters. In particular, the transportation service system may maintain requester data such as driving/riding histories, personal data, or other user data in addition to navigation and/or traffic management services or other location services (e.g., GPS services).
In particular embodiments, the transportation matching system 902 may manage ride matching services to connect a user/requester with a vehicle and/or provider. By managing the ride matching services, the transportation matching system 902 can manage the distribution and allocation of vehicle subsystem resources and user resources such as GPS location and availability indicators, as described herein.
The transportation matching system 902 may be accessed by the other components of the network environment 900 either directly or via network 904. In particular embodiments, the transportation matching system 902 may include one or more servers. Each server may be a unitary server or a distributed server spanning multiple computers or multiple datacenters. Servers may be of various types, such as, for example and without limitation, web server, news server, mail server, message server, advertising server, file server, application server, exchange server, database server, proxy server, another server suitable for performing functions or processes described herein, or any combination thereof. In particular embodiments, each server may include hardware, software, or embedded logic components or a combination of two or more such components for carrying out the appropriate functionalities implemented or supported by server. In particular embodiments, the transportation matching system 902 may include one or more data stores. Data stores may be used to store various types of information. In particular embodiments, the information stored in data stores may be organized according to specific data structures. In particular embodiments, each data store may be a relational, columnar, correlation, or other suitable database. Although this disclosure describes or illustrates particular types of databases, this disclosure contemplates any suitable types of databases. Particular embodiments may provide interfaces that enable a client device 906, or a transportation matching system 902 to manage, retrieve, modify, add, or delete, the information stored in data store.
In particular embodiments, the transportation matching system 902 may provide users with the ability to take actions on various types of items or objects, supported by the transportation matching system 902. As an example, and not by way of limitation, the items and objects may include ride share networks to which users of the transportation matching system 902 may belong, vehicles that users may request, location designators, computer-based applications that a user may use, transactions that allow users to buy or sell items via the service, interactions with advertisements that a user may perform, or other suitable items or objects. A user may interact with anything that is capable of being represented in the transportation matching system 902 or by an external system of a third-party system, which is separate from the transportation matching system 902 and coupled to the transportation matching system 902 via a network 904.
In particular embodiments, the transportation matching system 902 may be capable of linking a variety of entities. As an example, and not by way of limitation, the transportation matching system 902 may enable users to interact with each other or other entities, or to allow users to interact with these entities through an application programming interfaces (API) or other communication channels.
In particular embodiments, the transportation matching system 902 may include a variety of servers, sub-systems, programs, modules, logs, and data stores. In particular embodiments, the transportation matching system 902 may include one or more of the following: a web server, action logger, API-request server, relevance-and-ranking engine, content-object classifier, notification controller, action log, third-party-content-object-exposure log, inference module, authorization/privacy server, search module, advertisement-targeting module, user-interface module, user-profile store, connection store, third-party content store, or location store. The transportation matching system 902 may also include suitable components such as network interfaces, security mechanisms, load balancers, failover servers, management-and-network-operations consoles, other suitable components, or any suitable combination thereof. In particular embodiments, the transportation matching system 902 may include one or more user-profile stores for storing user profiles. A user profile may include, for example, biographic information, demographic information, behavioral information, social information, or other types of descriptive information, such as work experience, educational history, hobbies or preferences, interests, affinities, or location.
The web server may include a mail server or other messaging functionality for receiving and routing messages between the transportation matching system 902 and one or more client devices 906. An action logger may be used to receive communications from a web server about a user's actions on or off the transportation matching system 902. In conjunction with the action log, a third-party-content-object log may be maintained of user exposures to third-party-content objects. A notification controller may provide information regarding content objects to a client device 906. Information may be pushed to a client device 906 as notifications, or information may be pulled from the client device 906 responsive to a request received from the client device 906. Authorization servers may be used to enforce one or more privacy settings of the users of the transportation matching system 902. A privacy setting of a user determines how particular information associated with a user can be shared. The authorization server may allow users to opt in to or opt out of having their actions logged by the transportation matching system 902 or shared with other systems, such as, for example, by setting appropriate privacy settings. Third-party-content-object stores may be used to store content objects received from third parties. Location stores may be used for storing location information received from the client devices 906 associated with users.
In addition, the vehicle subsystem 908 can include a human-operated vehicle or an autonomous vehicle. A provider of a human-operated vehicle can perform maneuvers to pick up, transport, and drop off one or more requesters according to the embodiments described herein. In certain embodiments, the vehicle subsystem 908 can include an autonomous vehicle—i.e., a vehicle that does not require a human operator. In these embodiments, the vehicle subsystem 908 can perform maneuvers, communicate, and otherwise function without the aid of a human provider, in accordance with available technology.
In particular embodiments, the vehicle subsystem 908 may include one or more sensors incorporated therein or associated thereto. For example, sensor(s) can be mounted on the top of the vehicle subsystem 908 or else can be located within the interior of the vehicle subsystem 908. In certain embodiments, the sensor(s) can be located in multiple areas at once—i.e., split up throughout the vehicle subsystem 908 so that different components of the sensor(s) can be placed in different locations in accordance with optimal operation of the sensor(s). In these embodiments, the sensor(s) can include a LIDAR sensor and an inertial measurement unit (IMU) including one or more accelerometers, one or more gyroscopes, and one or more magnetometers. The sensor suite can additionally or alternatively include a wireless IMU (WIMU), one or more cameras, one or more microphones, or other sensors or data input devices capable of receiving and/or recording information relating to navigating a route to pick up, transport, and/or drop off a requester.
In particular embodiments, the vehicle subsystem 908 may include a communication device capable of communicating with the client device 906 and/or the transportation matching system 902. For example, the vehicle subsystem 908 can include an on-board computing device communicatively linked to the network 904 to transmit and receive data such as GPS location information, sensor-related information, requester location information, or other relevant information.
In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. Various embodiments and aspects of the invention(s) are described with reference to details discussed herein, and the accompanying drawings illustrate the various embodiments. The description above and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of various embodiments of the present invention.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. For example, the methods described herein may be performed with less or more steps/acts or the steps/acts may be performed in differing orders. Additionally, the steps/acts described herein may be repeated or performed in parallel with one another or in parallel with different instances of the same or similar steps/acts. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. Various embodiments and aspects of the invention(s) are described with reference to details discussed herein, and the accompanying drawings illustrate the various embodiments. The description above and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of various embodiments of the present invention.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. For example, the methods described herein may be performed with less or more steps/acts or the steps/acts may be performed in differing orders. Additionally, the steps/acts described herein may be repeated or performed in parallel with one another or in parallel with different instances of the same or similar steps/acts. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
This application claims the benefit of and priority to U.S. Provisional Application No. 62/840,293, filed Apr. 29, 2019. This application also relates to the subject matter disclosed in U.S. application Ser. No. 16/727,715, entitled VEHICLE SERVICE CENTER DISPATCH SYSTEM, and U.S. application Ser. No. 16/727,746, entitled INTELLIGENT MANAGEMENT OF ONE OR MORE MACHINES OF A VEHICLE SERVICE CENTER, each filed on the same day as the present application. The entire contents of the foregoing patent applications are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
62840293 | Apr 2019 | US |