DRIVER BEHAVIOR-BASED VEHICLE CONTROL
The vehicle system addresses the inefficiencies in energy and thermal management by using a controller to adjust cooling rates and modulate adaptive cruise control based on individual driving behaviors, enhancing energy efficiency and prediction accuracy.
Patent Information
- Application Number
- DE102024130632
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-26
- Filing Date
- 2024-10-21
- Publication Date
- 2025-04-30
AI Technical Summary
Existing vehicle systems struggle to efficiently manage energy consumption and thermal management based on individual driving behaviors, leading to inaccurate predictions of distance to empty and inefficient resource allocation.
A vehicle system that includes a battery thermal management system and a controller, which uses data on specific user behavior and predicted rate of change in vehicle speed to adjust cooling rates and modulate adaptive cruise control and distance to empty predictions.
The system effectively personalizes energy management and thermal control based on individual driving habits, improving the accuracy of distance to empty predictions and optimizing resource allocation.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
FIELD OF TECHNOLOGY
[0001] This disclosure concerns automotive technology. GENERAL STATE OF THE ART
[0002] A vehicle can use energy for propulsion. SUMMARY
[0003] A vehicle can include a battery thermal management system and a controller. The controller can use data to change the cooling rate of the battery thermal management system. The data can include a specific user operating the vehicle and a predicted rate of change of the vehicle's speed from its current speed to a target speed. The predicted rate of change of speed can be derived from data indicating that the specific user is driving the vehicle while the speed is changing from the current speed to the target speed. The controller can change the cooling rate such that the change is greater the larger the rate of change.
[0004] A method can generate personalized adaptive cruise control behavior by collecting data about a user and a predicted rate of change of speed, and then applying this user information and predicted rate of change to an adaptive cruise control system. The user data can include historical driving data generated by one or more vehicles driven by the user. The predicted rate of change of vehicle speed can be generated by a machine learning model that uses historical driving data as input. Applying this data and the predicted rate of change of speed to the adaptive cruise control system can modulate a control operation of the adaptive cruise control system.
[0005] A method can improve the accuracy of a distance-to-vacancy prediction by calculating the distance to vacancy, collecting user data and a predicted rate of change of speed, and then modulating the distance to vacancy according to the data and the predicted rate, such that the higher the predicted rate, the greater the modulation. The user data can include historical driving data generated by one or more vehicles driven by the user. The predicted rate of change of speed can be generated by a machine learning model that uses historical driving data as input. BRIEF DESCRIPTION OF THE DRAWINGS Fig. Figure 1 shows a vehicle that includes a control system which modulates a battery thermal management system according to the specific user driving the vehicle. Fig. Figure 2 shows a method that is used by a controller to generate personalized behavior of the adaptive cruise control. Fig. Figure 3 shows a method used by a controller to influence the accuracy of a prediction of the distance to vacancy. Fig. Figure 4 shows an example speed-time diagram generated for a user based on route information. Fig. Figure 5 shows a flowchart for an exemplary procedure for updating predicted rates of change in velocity for a specific user. Fig. Figure 6 shows an example speed-time graph of data recorded during a specific user's journey. Fig. Figure 7 shows an example table for storing the predicted rates of change in speed for a specific user. DETAILED DESCRIPTION
[0006] This document describes embodiments. However, it is understood that the disclosed embodiments are merely examples and that other embodiments may take different and alternative forms. The figures are not necessarily to scale. Some features may be enlarged or reduced to show details of certain components. Therefore, specific structural and functional details disclosed in this document are not to be interpreted as limiting, but merely as a representative basis for teaching the person skilled in the art.
[0007] Various features illustrated and described with respect to any of the figures may be combined with features illustrated in one or more other figures to produce embodiments not explicitly illustrated or described. The illustrated combinations of features provide representative embodiments for typical applications. However, various combinations and modifications of the features consistent with the teachings of this disclosure may be desirable for particular applications or implementations.
[0008] An identical vehicle can consume different amounts of energy under otherwise equivalent usage, depending on the specific behavior of a particular user. One aspect of this behavior is the rate of change in the vehicle's speed while the specific user is operating the vehicle. Thus, a vehicle that uses predicted rates of change in speed, based on the specific user's past driving data and generated via a machine learning model that takes this past driving data as input, can efficiently allocate resources to subsystems (e.g., a battery cooling system) of the vehicle, accurately predict vehicle performance (e.g., distance to depletion), or replicate the behavior of a specific user during the operation of an automated driving system (e.g., adaptive cruise control).The machine learning model can be trained using a collection of actual changes in speed data for a variety of drivers and for a variety of initial and final speeds.
[0009] A vehicle can collect various data about itself, its environment, or a driver's behavior. For example, a vehicle might periodically collect data about its fuel level to provide an estimated range or average fuel efficiency. Some vehicles provide information about ambient temperature or issue warnings about potential road icing. Examples include sensors and displays, as well as data storage and manipulation. Some examples also involve using collected data to optimize a vehicle system.
[0010] In many vehicles, certain systems can be affected by the driving style of a specific user. Consider, for example, Driver A, who accelerates and decelerates at a higher rate of change of speed than other recorded drivers. Then consider Driver C, who is a conservative driver and accelerates and decelerates at a lower rate of change of speed than the average driver. In some vehicles, Driver A might, for instance, cause an electric motor to generate more heat than Driver C.
[0011] In battery-powered electric vehicles, many systems can be equally affected by a specific user's driving style. Consider, for example, Driver A and Driver C as described above. Driver A might consume more energy, reduce the vehicle's range by a greater amount, and cause the battery to generate more heat than Driver C, assuming otherwise equivalent usage.
[0012] The systems disclosed in this document can collect, analyze, and apply data to accurately predict the distance to a vehicle's empty battery, cool a vehicle's power system, or modulate a vehicle's adaptive cruise control system. Consider, for example, Driver A and Driver C as described above. A vehicle that has stored and updated driving data specific to Driver A and Driver C could apply each driver's data so that a battery thermal management system could be configured to remove more heat from the battery when Driver A is driving and to remove less heat from the battery when Driver C is driving, over an otherwise equivalent usage pattern. In other words, the vehicle could anticipate a need for a battery thermal management system based on a user's past behavior and allocate resources according to the anticipated need.
[0013] The vehicle can collect data about its speed. In cases where a vehicle accelerates such that its speed increases monotonically over an interval defined by an initial and final speed, the vehicle can further determine its average acceleration by dividing the interval by the time it took the vehicle to complete that interval. For example, if the vehicle initially travels at 10 mph and accelerates to 25 mph over 2 seconds, the interval would be (25 mph - 10 mph) = 15 mph, the time the vehicle took to complete the interval would be 2 seconds, and thus the average acceleration would be 15 mph / 2 seconds = 7.5 mph / s. Implementations could use any units.
[0014] In cases where a vehicle's speed does not increase monotonically, the collected data can be discarded. A vehicle can use filters other than monotonicity, such as discarding current rates of change in speed if they do not differ sufficiently from predicted rates of change.
[0015] Similarly, in cases where a vehicle decelerates in such a way that its speed decreases monotonically over an interval defined by an initial and final speed, an average deceleration can also be determined by dividing the interval by the time the vehicle took to complete that interval. For example, if the vehicle initially travels at 55 mph and decelerates to 0 mph over 5.5 seconds, the interval would be (0 mph - 55 mph) = -55 mph, the time the vehicle took to complete the interval would be 5.5 seconds, and thus the average deceleration would be -55 mph / 5.5 seconds = -10 mph / s.
[0016] In cases where a vehicle's speed does not decrease monotonically, the collected data can be discarded. A vehicle can use filters other than monotonicity, such as discarding current rates of change in speed if they do not differ sufficiently from the predicted rate of change.
[0017] In the same way as storing acceleration or deceleration data, a vehicle could record times that describe how long it takes to monotonically accelerate or decelerate from an initial speed to a final speed while a specific user is operating the vehicle. A vehicle could predefine speed intervals between an initial speed and a final speed to store this time data. In cases where the vehicle accelerates beyond an actual interval that is longer than the predefined interval, the vehicle can record times for each predefined interval within the actual interval. For example, if the vehicle's speed monotonically increases from 6 mph to 36 mph (36 mph - 6 mph = an actual interval of 30 mph), and the predefined intervals are 3 mph (e.g., 0-3 mph, 3-6 mph, ...), the vehicle could record times for each predefined interval within the actual interval., 30-33 mph, 33-36 mph), the vehicle can record and store the times it took to accelerate through each of the ten predefined intervals.
[0018] The vehicle can store predictions—average acceleration and deceleration values—and continuously update these predictions as the vehicle is used by a specific user. Consider, for example, Driver A and Driver C as described above. A vehicle may have stored a prediction that Driver A will accelerate from 5 mph to 10 mph in 0.30 seconds and a second prediction that Driver C will accelerate from 5 mph to 10 mph in 1 second. If the vehicle accelerates from 5 mph to 10 mph in 0.5 seconds while Driver A is using the vehicle, the vehicle can update the prediction specific to Driver A without changing the second prediction specific to Driver C. The predictions after the update might be that Driver A accelerates from 5 mph to 10 mph in 0.33 seconds and that Driver C accelerates from 5 mph to 10 mph in 1 second.
[0019] To update a predicted rate, a user can generate a current rate of change of speed by changing from an initial speed to a final speed. The vehicle can then record this current rate.
[0020] To update a predicted rate, the vehicle can compare the current rate of change of speed with a threshold value. In embodiments using this method, if the actual rate is less than a threshold value, the vehicle can exclude the update, but if the actual rate is greater than the threshold value, the vehicle can use the actual rate to update the predicted rate.
[0021] Before updating, the vehicle may discard the current rate of change of speed unless the vehicle has been monotonically accelerating or decelerating over a speed interval.
[0022] The vehicle can use machine learning algorithms to capture, test, generate, and / or update predictions. For example, a machine learning algorithm could be used to extract a subset of the actual rates of change in speed from a larger dataset collected during a journey. In another example, a machine learning algorithm could be used to validate a set of initialized or updated values. In yet another embodiment, a machine learning algorithm could be used to update the stored values.
[0023] In one exemplary embodiment of using a machine learning algorithm to update a predicted rate using a current rate, the current rate could be randomly assigned to a train or test set. Then, when a condition is met, such as when the train and test sets have increased by 10% since the last time the predicted rate was updated, a machine learning algorithm could be retrained to generate a new set of predicted rates for all speed intervals.
[0024] The vehicle can incorporate other information here when a system, such as the battery thermal management system, is modified. For example, suppose the predicted rate would cause the control unit to increase cooling by 2% without considering additional information. If the control unit uses additional information, such as the presence of an upcoming congested route or work zone, it might only increase cooling by 1.2%.
[0025] The vehicle can store predicted values for later retrieval. One embodiment involves storing these predicted values in a table. In this embodiment, one axis of the table can represent an initial velocity, another axis can represent a final velocity, and a cell at the intersection of the initial and final velocities can contain a predicted value. The predicted value can correspond to a specific point in time or a rate of change of the vehicle's velocity.
[0026] The vehicle can store multiple predicted values corresponding to multiple users. An embodiment that uses a table constructed as described above to store predicted values can have one table per user. In this embodiment, predicted values for a specific user currently using the vehicle can be retrieved from memory, updated, or applied without affecting the predicted values of other users.
[0027] The vehicle can apply at least one predicted value to optimize a vehicle system. Consider, for example, Driver A and Driver C as described above. Based on the predicted values specific to Driver A and the second predicted value specific to Driver C, the vehicle can estimate that it can generate more heat when Driver A uses the vehicle than when Driver C uses it. Accordingly, the vehicle can increase the activity of a cooling system when Driver A uses the vehicle and decrease the activity of a cooling system when Driver C uses the vehicle.
[0028] The vehicle can combine additional information with at least one predicted value to optimize a vehicle system. For example, if a user enters a route into the vehicle's navigation system, the vehicle can use speed limit data along the route to generate an expected speed over an estimated route duration. The vehicle can then apply the predicted acceleration values for that specific user to any changes in the expected speed to adjust the duration, resulting in a driving profile personalized for that user. This driving profile could then be used to prepare resources before a change in expected speed, such as allocating more power to a cooling system to cool the battery before the expected speed changes.
[0029] The vehicle can use at least one predicted value to display personalized information to a user. Consider, for example, Driver A and Driver C as described above. One embodiment may include two otherwise equivalent vehicles that, due to the higher predicted rate of change for Driver A compared to Driver C, display a shorter distance to empty for Driver A than for Driver C.
[0030] The vehicle can thus use information about past rates of change in a user's speed from an initial speed to a final speed to generate a predicted rate of change from initial speed to final speed. The predicted rate can be applied to a system within the vehicle to modulate its output. For example, the vehicle can use information that driver A accelerated from 10 mph to 20 mph over 0.5 seconds in the past to predict that driver A will accelerate from 10 mph to 20 mph over 0.5 seconds in the future. A controller can apply this prediction to a cooling system to modulate the cooling rate, thus cooling the vehicle more efficiently. A controller can employ a procedure to obtain this prediction and then apply it to an adaptive cruise control system to emulate the user's acceleration patterns.A control system can use a method to calculate a distance to the vacancy, capture this forecast, and then modulate the distance to the vacancy according to the forecast.
[0031] The vehicle may include a system and a controller. The controller may be configured to modify a system output according to a stored predicted rate of change of vehicle speed, such that the larger the stored predicted rate, the greater the modification. Consider, for example, Driver A and Driver C as described above. If the system is a battery thermal management system, the vehicle may be configured to use a predicted rate of change of vehicle speed from an initial speed to a final speed for Driver A, derived from data for Driver A who previously transitioned from the initial speed to the final speed, to utilize the battery thermal management system to a greater extent (e.g., higher flow rate, increased power, etc.).) compared to driver C for the same change from initial to final speed, since driver A has a larger predicted rate of change of speed during the transition from initial to final speed compared to driver C. Other systems are considered that may involve an inverse relationship between the predicted rate of change and the change in a system.
[0032] To create a personalized cruise control experience, the vehicle can use a predicted rate of change in speed for a user to modify the control operation of a cruise control system. A cruise control system can autonomously maintain a near-constant speed, including while driving over uphill or downhill terrain. Fluctuations in vehicle speed occur in response to changing environmental conditions. For example, if a cruise control system maintains a vehicle speed of 35 mph over level ground and the vehicle begins to ascend a hill, the vehicle speed may fluctuate to 30 mph.An adaptive cruise control system includes a feedback system where a fluctuation involving a decrease in speed results in increased engine power, and conversely, a fluctuation involving an increase in speed results in decreased engine power or the activation of another vehicle system. In the previous example, after detecting that the vehicle's speed has fluctuated to 30 mph, the cruise control system can increase engine power to bring the vehicle back up to 35 mph while driving uphill.
[0033] The vehicle can use a predicted rate of change for a current driver to initiate personalized corrective actions when energy is supplied to a motor in response to a changing environmental condition, in order to maintain a constant speed. Consider, for example, Driver A and Driver C as described above. A cruise control system for Driver A can cause more energy to be supplied to a motor in response to a changing environmental condition, resulting in the vehicle returning to a constant speed more quickly than it would for Driver C in an otherwise equivalent situation.
[0034] A cruise control system can initiate braking when the distance between the vehicle and a second vehicle ahead decreases. The vehicle can use a predicted rate of change for a current driver to initiate personalized braking. Consider, for example, Driver A and Driver C as described above. A cruise control system personalized for Driver A can initiate braking to a greater extent than a cruise control system personalized for Driver C in an otherwise equivalent situation.
[0035] A cruise control system can cause acceleration from an initial speed to a final speed. The vehicle can use a predicted rate of change for a given driver to produce personalized acceleration. Consider, for example, Driver A and Driver C as described above. A cruise control system personalized for Driver A can produce a greater acceleration than a cruise control system personalized for Driver C in an otherwise equivalent situation.
[0036] A cruise control system can use additional information, such as route information (including directions, speed limits along the route, traffic conditions, weather, ambient temperature, or distance to battery depletion), to modulate the system's control operation. Consider, for example, Driver A as described above. A cruise control system personalized for Driver A might apply greater deceleration on a clear, sunny day than on a cold, snowy day in an otherwise equivalent situation. Modulation factors can be defined for any predetermined criteria in an additional information category.
[0037] Fig. Figure 1 shows a vehicle that includes a control system which modulates a battery thermal management system according to the specific user driving the vehicle. Fig. Figure 1 includes a vehicle 102. The vehicle 102 includes a controller 104, a battery thermal management system 106, and a battery 110. The controller 104 is connected to the battery thermal management system 106. Generally, battery thermal management systems modulate the temperature of a battery. Here, the battery thermal management system 106 includes at least one cooling device or cooling method 108 for modulating the temperature of the battery 110. Generally, a cooling device or cooling method may or may not surround a battery. Here, an enclosing diagram is used for teaching purposes and is not intended to be restrictive.
[0038] The controller 104 can modulate the battery thermal management system 106 according to a specific user and a predicted rate of change of the vehicle 102's speed. Consider, for example, Driver A and Driver C as described above. When Driver A operates the vehicle 102, the controller 104 can instruct the battery thermal management system 106 to increase the cooling effect of the cooling device or cooling method 108 to keep the battery 110 within a predefined operating temperature. Alternatively, when Driver C operates the vehicle 102, the controller 104 can instruct the battery thermal management system 106 to maintain the cooling effect of the cooling device or cooling method 108. By differentiating between the driving styles of Driver A and Driver C, the vehicle 102 thus allocates resources to the battery thermal management system 106 more efficiently.
[0039] In one embodiment, the vehicle can determine a modulation parameter as soon as a user enters the vehicle and enters route information. By applying the user's previous behavior to a speed profile expected from the route information, the controller 104 can modulate the battery thermal management system 106 preventively rather than reactively.
[0040] Fig. Figure 2 shows a method that is used by a controller to generate personalized behavior of the adaptive cruise control. Fig. 2 includes a controller 202, which incorporates user information 210 and a predicted rate of change of speed 208 to modulate an adaptive cruise control 204. The controller 202 modulates the adaptive cruise control 204 to generate personalized behavior 206 of the adaptive cruise control. The predicted rate of change of speed 208 is calculated using at least historical data 212 associated with the user information 210.
[0041] In one embodiment, additional information 214 is used to calculate the predicted rate of change of speed 208. This additional information 214 may include information relating to an input of a suggested route, weather information, temperature information, or traffic information. These examples of additional information 214 may be combined with or included in other examples known to the person skilled in the art to calculate the predicted rate of change of speed 208. For example, if the additional information includes the fact that it is raining, the predicted rate of change of speed 208 may be reduced.
[0042] The controller 202 is defined here as any embodiment capable of employing the claimed method by using the user information 210 and the predicted rate of change of speed 208 to modulate an adaptive cruise control 204. In one embodiment, the controller 202 and the adaptive cruise control 204 can be part of the same system. In another embodiment, the following are all part of a single controller: the user information 210, the historical data 212, the other information 214, the predicted rate of change of speed 208, the controller 202, the adaptive cruise control 204, and the personalized behavior 206 of the adaptive cruise control.In other embodiments, the control unit 202 can be replaced by an electrical component, by other components, by several components, by another system, or by a subsystem that includes the adaptive speed control 204.
[0043] Fig. Figure 3 shows a method used by a controller to influence the accuracy of a prediction of the distance to vacancy. Fig. Figure 3 shows a controller 308, which is defined as an embodiment capable of employing the claimed method. The controller 308 calculates a distance to the empty space 302 by a method such as comparing a load percentage with an estimated distance to the empty space stored in a lookup table, user information 304, and a predicted rate of change of velocity 306, which then outputs a modulated distance to the empty space 310.
[0044] Consider, for example, Driver A and Driver C as above. Since the user information and the predicted rate of change of speed for Driver A indicate that Driver A will discharge a battery faster than an average driver, the procedure can generate the modulated distance to empty 310, which may be less than the calculated distance to empty 302 for Driver A. However, for Driver C, the procedure can generate the modulated distance to empty 310, which is greater than or equal to the calculated distance to empty 302, because the user information and the predicted rate of change of speed for Driver C indicate that Driver C will discharge a battery faster than a rate less than or equal to that of an average driver.
[0045] In one embodiment, the controller 308 calculates the calculated distance to the empty space 302. In another embodiment, one of the user information or the predicted rate of change of speed is stored separately from the controller 308.
[0046] Fig. Figure 4 shows an example speed-time diagram generated for a user based on route information. Fig. Figure 4 shows an exemplary relationship between a time 402, during which a vehicle was driven, and a speed 404 as a function of time 402. At various times, this diagram shows horizontal, solid lines representing an expected constant speed, such as a first constant speed 406. At other times, this diagram shows sloping, dashed lines representing expected changes in speed, such as a first expected change in speed 408 and a second expected change in speed 412. Also shown alongside the second expected rate of change of speed 412 are two expected changes in speed 410 and 414.
[0047] Consider, for example, Driver A and Driver C as above. A vehicle can generate a standard graph of expected constant speeds and expected changes in speed. The vehicle can then use information derived from historical data, and in some examples generated via a machine learning model, to adjust the expected changes in speed to produce a Driver A-specific expected change in speed 410, which differs from a Driver C-specific expected change in speed 414. This example discusses the adjustment of the second expected change in speed only for brevity and is not intended to be restrictive. By incorporating a specific driver's past driving behavior when generating route information, as in Fig. As shown in Figure 4, a vehicle can adjust all expected changes in speed or any subset of the expected changes in speed to better predict the time 402 and the resources expected to be used by the vehicle.
[0048] Fig. Figure 5 shows a flowchart for an exemplary procedure for updating predicted rates of change in velocity for a specific user. Fig. Step 5 includes a first step (502) to collect driving data in order to capture the actual rate of change of speed from the current user's behavior. A second step (504) involves segmenting the actual rate of change of speed based on a predefined step size, such as 5 mph. For example, if, using a step size of 5 mph, the actual rate of change of speed is captured for a driver changing from 55 mph to 75 mph, the actual rate of change will be divided into four segments of 5 mph each: 55 mph to 60 mph, 60 mph to 65 mph, 65 mph to 70 mph, and 70 mph to 75 mph.
[0049] In one embodiment, each segment generated by the second step 504 goes through a third step 506 and the remainder of the flowchart individually. For teaching purposes, the following examples discuss the 55 mph to 60 mph segment (“the 55-60 segment”) generated by the preceding second step 504. The third step 506 involves testing whether the speed within a segment increases or decreases monotonically. If the third step 506 results in the speed within the segment increasing or decreasing monotonically, the process proceeds to a fourth step 508. If the third step 506 results in the speed within the segment not increasing or decreasing monotonically, the process proceeds to a first administrative step 520.
[0050] In the fourth step 508, the actual time between an initial velocity and a final velocity is calculated. A fifth step 510 can be performed before or simultaneously with the fourth step 508 and can be performed at a different location than the fourth step 508.
[0051] Step 510 involves queries to determine if the vehicle has a stored value assigned to the segment generated by step 504. A stored value could be held in a primary memory, either online or offline. For example, step 510 for the 55-60 segment might involve queries of a data storage device to determine if the vehicle already has data stored for transitioning from 55 to 60 mph.
[0052] If the fifth step 510 results in the vehicle not having a stored value assigned to the segment generated by the second step 504, the process proceeds to an initial assignment step 518, in which the actual time generated by the fourth step 508 becomes the stored value. For example, if the fifth step 510 does not return a stored value for historical rates of change of speed from 55 to 60 mph specific to the particular driver, the data recorded for the 55-60 segment will be assigned to this stored value. Some intermediate calculations or manipulations, including the application of a machine learning algorithm, may be included before the assignment. If the fifth step 510 results in the vehicle having a value stored for the segment generated by the second step 504, the process proceeds to a sixth step 512.
[0053] In the sixth step, 512, a difference is calculated between the stored value and the actual rate of change of velocity generated by the fourth step, 508; this difference is referred to as the "delta." In a seventh step, 514, the delta is compared to a predetermined threshold error. If the delta is smaller than the predetermined threshold error, the process proceeds to the first administrative step, 520. Otherwise, the process proceeds to an eighth step, 516.
[0054] In step eight, 516, the actual time generated by step four, 504, is used to update the stored value. This update may involve calculations that include assigning weights to the stored value and the actual time. This update may also involve assigning the actual time to a training or test dataset used to build or update a machine learning model. Finally, this update may involve applying a machine learning model. Following step eight, 516, the process proceeds to a second administrative step, 524.
[0055] The first administrative step, 520, involves testing whether all data from the first step, 502, has been fully processed. If all data has been processed, the process reaches an initial termination, 522, at which point the update activity ends. If there is still data to be processed, the process proceeds to the next iteration, 528. The next iteration, 528, processes one remaining segment. For example, if the processing of the 55-60 mph segment is complete, the next iteration, 528, can begin the third step, 506, with one of the 60-65 mph segments, the 65-70 mph segment, or the 70-75 mph segment.
[0056] The second administrative step 524 involves testing whether all data from the first step 502 has been fully processed. If all data has been processed, the process reaches a second termination 526, where the vehicle can update a second memory and then terminate the update activity. In one embodiment, the first memory is offline and the second memory is online. If not all data has been processed, the process proceeds to the next iteration 528.
[0057] Fig. Figure 6 shows an example speed-time graph of data recorded during a specific user's journey. Fig. Figure 6 shows an exemplary relationship between a time 602, during which a vehicle was driven, and a speed 604 as a function of time 602. While the diagram from Fig. The diagram shows 4 predicted speeds and predicted changes in speed. Fig. 6 is an example of actual speeds recorded during a journey.
[0058] Fig. Figure 7 shows an example table for storing the predicted rates of change in speed for a specific user. Fig. Figure 7 shows stored values relating to the predicted rate of change of velocity between an initial velocity 702 and a final velocity 704. In one embodiment, a stored value is the time required to transition from the initial velocity to the final velocity. For example, t4 706 is a stored value in a cell at the intersection of initial velocity = 15 mph and final velocity = 20 mph.
[0059] Applying the update process from Fig. 5 on the graph Fig. 6 and the table from Fig. 7 begins with the graph being made up of Fig. The first step, 502, involves entering the number 6. In the second step, 504, the data is segmented into 5-mph segments labeled t1 606, t2 608, t3 610, t3' 612, and t2' 614. For brevity, only these segments will be discussed; however, all potential segments or any subset of potential segments can be evaluated. Segment t1 606 corresponds to a monotonic acceleration from 0 to 5 mph. Segment t2 608 corresponds to a monotonic acceleration from 5 to 10 mph. Segment t3 610 corresponds to a monotonic acceleration from 10 to 15 mph. Segment t3' 612 corresponds to a monotonic deceleration from 15 to 10 mph. Segment t2' 614 corresponds to a monotonic deceleration from 10 to 5 mph.
[0060] Since all segments increase or decrease monotonically, all segments pass the third step 506, although in some embodiments only one segment is tested at a time.
[0061] In an embodiment where stored values are held in a tabular format, t1 606, t2 608, t3 610, t3' 612, and t2' 614 update a cell at the intersection of the initial velocity axis 702 and the final velocity axis 704, corresponding to the initial velocity and final velocity of the segment, respectively. For example, t1 606 would update or initialize the cell at the intersection of initial velocity = 0 mph and final velocity = 5 mph. Similarly, t3' 612 would update or initialize the cell at the intersection of initial velocity = 15 mph and final velocity = 10 mph.
[0062] The 65-20 cell 708 is located at the intersection of the initial velocity (65 mph) and the final velocity (20 mph). An exemplary process using a fixed 5-mph step size does not allow the 65-20 cell 708 to carry a value, as data from a deceleration from 65 to 20 mph would be split into 5-mph segments. Another embodiment may allow the 65-20 cell 708 to carry a value.
[0063] The scaling of the table from Fig.Paragraph 7 suggests that the table only contains stored values relating to increasing speed. In such an embodiment, values relating to decreasing speed would be stored elsewhere. However, in other embodiments, data relating to both increasing and decreasing speeds are recorded in the same table. In still other embodiments, data relating to both increasing and decreasing speeds may be contained in a different data structure.
[0064] The algorithms, methods, or processes disclosed in this document may be executable by or implemented by a computer, controller, or processing device, which may include any dedicated electronic control unit or programmable electronic control unit. Furthermore, the algorithms, methods, or processes may be stored in many forms as computer- or controller-executable data and instructions, including, but not limited to, information permanently stored on non-writable storage media, such as read-only memory devices, and information modifiably stored on writable storage media, such as compact discs, random access memory devices, or other magnetic and optical media. The algorithms, methods, or processes may also be implemented in software-executable objects.Alternatively, the algorithms, methods, or processes may be implemented in whole or in part using suitable hardware components, such as application-specific integrated circuits, field-programmable gate arrays, state machines, or other hardware components or devices, or a combination of firmware, hardware, and software components.
[0065] Although exemplary embodiments have been described above, these embodiments are not intended to describe all possible forms encompassed by the claims. The terms used in the description are descriptive and not limiting, and it is understood that various modifications may be made without altering the spirit and scope of these disclosed subject matter. For example, the terms "controller" and "controllers" may be used interchangeably in this document, since the functionality of a controller may be distributed across several controllers / modules, all of which may communicate using standard techniques.
[0066] As previously described, the features of different embodiments can be combined to form further embodiments of the invention, which may not be expressly described or illustrated. Although various embodiments may have been described in such a way that they offer advantages or are preferred over other embodiments or implementations according to the prior art with respect to one or more desired properties, the person skilled in the art understands that compromises may be made with respect to one or more features or properties in order to achieve desired overall system attributes, which depend on the specific application and implementation. These attributes may include, among others, strength, durability, marketability, appearance, installation, size, maintainability, weight, manufacturability, ease of assembly, etc.Thus, embodiments that are described as less desirable than other embodiments or prior art implementations with respect to one or more characteristics are not outside the scope of the disclosure and may be desirable for particular applications.
[0067] According to the present invention, a vehicle is provided which comprises: a battery thermal management system; and a controller programmed to change the cooling rate of the battery thermal management system for a specific user and in response to a predicted rate of change of the vehicle's speed from a current speed to a target speed, derived from data indicating that the specific user is driving the vehicle while the speed has changed from the current speed to the target speed, such that the change is greater the greater the predicted rate.
[0068] According to one embodiment, the controller is further programmed to update the predicted rate in accordance with the current rate in response to a difference between the predicted rate and a current rate of change that is greater than a predetermined threshold.
[0069] According to one embodiment, the controller is further programmed to use machine learning algorithms to perform the update.
[0070] According to one embodiment, the controller is further programmed to update the predicted rate in accordance with the current rate in response to a difference between the predicted rate and a current rate of change that is greater than a predetermined threshold, and to the current rate being defined by monotonically increasing or monotonically decreasing values.
[0071] According to one embodiment, the control is further programmed to exclude updating regardless of the difference in response to the fact that the current rate is defined by non-monotonically increasing or non-monotonically decreasing values.
[0072] According to one embodiment, the control system is further programmed to change the cooling rate in response to at least one of the weather conditions, driving conditions, ambient temperature, or a predicted route.
[0073] According to the present invention, a method for generating personalized adaptive cruise control commands comprises: obtaining (i) data about a user, including historical driving data generated by one or more vehicles driven by the user, and (ii) a predicted rate of change of vehicle speed generated by a machine learning model using the historical driving data as input; and applying the data and the predicted rate to a vehicle adaptive cruise control system to modulate a control operation of the adaptive cruise control system.
[0074] In one aspect of the invention, the method involves updating the historical driving data when the user generates an actual rate of change of speed by switching from an initial speed to a final speed.
[0075] In one aspect of the invention, the update occurs in response to a difference between the actual rate of change of velocity and the predicted rate of change of velocity exceeding a threshold.
[0076] In one aspect of the invention, the method involves excluding the updating when the vehicle does not transition monotonically from the initial speed to the final speed.
[0077] In one aspect of the invention, the application further includes at least one of route information, weather, ambient temperature or distance until the battery runs out.
[0078] In one aspect of the invention, the control process of the adaptive cruise control system involves braking in response to a decreasing distance to a vehicle ahead.
[0079] In one aspect of the invention, the control process of the adaptive speed control system involves accelerating from an initial speed to a final speed.
[0080] In one aspect of the invention, the control process of the adaptive speed control system involves autonomously maintaining a constant speed.
[0081] In one aspect of the invention, the control process of the adaptive cruise control system involves maintaining a constant speed while driving over ascending or descending terrain.
[0082] According to the present invention, a method for predicting a distance to vacancy comprises: acquiring (i) data about a user, including historical driving data generated by one or more vehicles driven by the user, and (ii) a predicted rate of change of vehicle speed generated by a machine learning model using the historical driving data as input; and changing a value for the distance to vacancy according to the data and the predicted rate, such that the change is greater the greater the predicted rate.
[0083] In one aspect of the invention, the method involves updating the predicted rate when a difference between the predicted rate and an actual rate of change, which is detected when a velocity changes monotonically between an initial velocity and a final velocity, exceeds a predetermined value.
[0084] In one aspect of the invention, updating changes the historical driving data for the user.
[0085] In one aspect of the invention, the update further utilizes a machine learning algorithm to change the predicted rate of change to an updated predicted rate of change.
[0086] In one aspect of the invention, the predetermined value is at least 5 mph.
Claims
[1] Vehicle comprising: a battery thermal management system; and a controller programmed, for a specific user and in response to a predicted rate of change of the speed of the vehicle from a current speed to a target speed derived from data indicating that the specific user is driving the vehicle while the speed has changed from the current speed to the target speed, to change a cooling rate of the battery thermal management system according to the predicted rate, such that the greater the predicted rate, the greater the change. [2] The vehicle of claim 1, wherein the controller is further programmed to update the predicted rate according to the current rate in response to a difference between the predicted rate and a current rate of change being greater than a predetermined threshold. [3] The vehicle of claim 2, wherein the controller is further programmed to use machine learning algorithms to perform the updating. [4] The vehicle of claim 1, wherein the controller is further programmed to update the predicted rate according to the current rate in response to a difference between the predicted rate and a current rate of change being greater than a predetermined threshold and the current rate being defined by monotonically increasing or monotonically decreasing values. [5] The vehicle of claim 4, wherein the controller is further programmed to preclude updating regardless of the difference in response to the current rate being defined by non-monotonically increasing or non-monotonically decreasing values. [6] The vehicle of claim 1, wherein the controller is further programmed to change the cooling rate further in response to at least one of the weather, the driving condition, the ambient temperature, or a predicted route. [7] A method for generating personalized adaptive cruise control commands, comprising: Obtaining (i) data about a user, including historical driving data generated by one or more vehicles driven by the user, and (ii) a predicted rate of change of vehicle speed generated by a machine learning model using the historical driving data as input; and Applying the data and the predicted rate to an adaptive cruise control system of a vehicle to modulate a control action of the adaptive cruise control system. [8] The method of claim 7, further comprising updating the historical driving data when the user generates an actual rate of change of speed by changing from an initial speed to a final speed. [9] The method of claim 8, wherein the updating occurs in response to a difference between the actual rate of change of speed and the predicted rate of change of speed exceeding a threshold. [10] The method of claim 8, further comprising excluding the updating if the vehicle does not transition monotonically from the initial velocity to the final velocity. [11] The method of claim 7, wherein applying further includes at least one of route information, weather, ambient temperature, or distance to empty battery. [12] The method of claim 7, wherein the control action of the adaptive cruise control system includes decelerating in response to a distance to a preceding vehicle decreasing. [13] The method of claim 7, wherein the control operation of the adaptive cruise control system includes accelerating from an initial speed to a final speed. [14] The method of claim 7, wherein the control operation of the adaptive cruise control system includes autonomously maintaining a constant speed. [15] The method of claim 7, wherein the control operation of the adaptive cruise control system includes maintaining a constant speed while traveling over uphill or downhill terrain.