Vehicle control device and vehicle control method
Patent Information
- Application Number
- PCT/JP2024/008598
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-06
- Publication Date
- 2025-10-02
AI Technical Summary
Existing vehicle control systems face resource constraints due to limited calculation and memory resources in ECUs, particularly in advanced driver-assistance systems like ACC and AD, where unnecessary learning processes hinder efficient resource utilization.
A vehicle control device with a calculation device and storage device that includes a function realization unit, control parameter calculation unit, and state determination unit to optimize resource allocation by stopping learning processes when control parameters converge, allowing released resources to be utilized for other functions.
Enables effective use of resources previously allocated to less necessary arithmetic processing by releasing them for other functions or processes, enhancing the efficiency and adaptability of vehicle control systems.
Smart Images

Figure JP2024008598_02102025_PF_FP_ABST
Abstract
Description
Vehicle control device and vehicle control method
[0001] The present invention relates to a vehicle control device and a vehicle control method.
[0002] BACKGROUND ART In order to provide safer and more comfortable driving, advanced control is required of ECUs (Electronic Control Units) that control ADAS (Advanced Driver-Assistance Systems) such as ACC (Adaptive Cruise Control) and AD (Autonomous Driving) in automobiles.
[0003] To perform advanced control using the ECU, the ECU needs to perform more calculations, and it is therefore necessary to secure more resources (calculation resources and memory resources) for the ECU. However, since the resources in the ECU are limited, it is necessary to stop calculations that are less necessary in the ECU and release the resources used for those calculations.
[0004] Here, the calculation processing that is less necessary in the ECU refers to, for example, learning of the driver's driving characteristics and reflecting them in control parameters such as ACC and AD, when the learning has progressed to a certain extent.
[0005] Regarding resource release, for example, Patent Document 1 describes "a driving assistance method for an autonomous vehicle capable of switching between manual driving by a driver and autonomous driving, learning the driving characteristics of the driver during manual driving, and reflecting the learning results in the driving characteristics of the autonomous driving control, the driving assistance method comprising: detecting driving characteristics of an area in which the autonomous vehicle travels; adjusting the learning results in accordance with the detected driving characteristics of the area; and executing the autonomous driving control based on the adjusted learning results." Patent Document 1 also describes stopping the learning once a predetermined amount of data regarding the driver's driving characteristics during manual driving has been learned.
[0006] International Publication No. 2019 / 21429
[0007] According to the technology described in Patent Document 1, once a predetermined amount of data related to the driving characteristics of a driver during manual driving has been learned, the learning can be stopped. However, there is no mention of utilizing the resources released by stopping the learning.
[0008] The present invention has been made in consideration of the above points, and aims to free up resources that have been used for less necessary arithmetic processing, and to enable the freed up resources to be used effectively.
[0009] The present application includes a number of means for solving at least some of the above-mentioned problems, examples of which are as follows.
[0010] A representative example of the invention disclosed in the present application is as follows: That is, a vehicle control device mounted on a vehicle includes a calculation device and a storage device, wherein the calculation device includes a function realization unit that realizes a driving assistance function for a driver of the vehicle by executing an application program expanded on a memory, a control parameter calculation unit that executes a learning process to learn driving characteristics of the driver based on sensor output and vehicle information when the driving assistance function is not being executed, and generates control parameters for controlling the driving assistance function based on the results of the learning process when the driving assistance function is being executed, and a state determination unit that controls the release and allocation of resources of the vehicle control device for the driving assistance function and the learning process, wherein the control parameter calculation unit requests the learning process to be stopped when the accumulated control parameters have converged, and the state determination unit responds to the request to stop the learning process by terminating the learning process, thereby releasing the resources used for the learning process.
[0011] According to the present invention, resources that have been used for less necessary arithmetic processing can be released, and the released resources can be used effectively.
[0012] Problems, configurations, and effects other than those described above will become apparent from the following description of the embodiments.
[0013] It is a diagram showing an example of the configuration of a vehicle control system including an ADAS ECU according to one embodiment of the present invention. It is a diagram showing an example of the configuration of an ADAS ECU. It is a flowchart showing an example of a learning optimization process. It is a flowchart showing an example of a control parameter calculation process. It is a flowchart showing an example of a control parameter determination process. It is a flowchart showing an example of an ECU state / SW management process.
[0014] An embodiment of the present invention will be described below with reference to the drawings. In all drawings used to describe the embodiment, identical components are generally designated by the same reference numerals, and repeated description thereof will be omitted. Furthermore, in the following embodiments, the components (including element steps, etc.) are not necessarily essential unless otherwise specified, or unless clearly considered essential in principle. Furthermore, when the terms "consisting of A," "composed of A," "having A," or "including A" are used, other elements are not excluded unless otherwise specified, or unless otherwise clearly considered to be only that element. Similarly, in the following embodiments, when referring to the shape, positional relationship, etc. of components, etc., the term includes those that are substantially similar or similar to the shape, etc., unless otherwise specified, or unless clearly considered otherwise in principle.
[0015] <Configuration Example of Vehicle Control System 1 Including ADAS ECU 10 According to One Embodiment of the Present Invention> FIG. 1 shows a configuration example of a vehicle control system 1 including an ADAS ECU 10 according to one embodiment of the present invention.
[0016] The vehicle control system 1 is mounted on a vehicle (automobile) and includes an ADAS ECU 10, a camera 30, various sensors 31, an HMI display unit 40, and a gateway 50.
[0017] The ADAS ECU 10 controls an ADAS (Advanced Driver Assistance System) in the vehicle based on video signals input from the camera 30, sensor information input from various sensors 31, and various information input from other ECUs and the like via the gateway 50. The ADAS ECU 10 corresponds to a vehicle control device of the present invention.
[0018] The camera 30 captures images of the surroundings of the vehicle and outputs the resulting video signals to the ADAS ECU 10. The various sensors 31 are, for example, radar, LiDAR (Light Detection And Ranging), an ultrasonic sensor, a gyro sensor, etc., and output their respective sensor values to the ADAS ECU 10. Hereinafter, the video signals output by the camera 30 and the sensor values of the various sensors 31 will be collectively referred to as sensor output.
[0019] The HMI (Human Machine Interface) display unit 40 is, for example, a display provided on the instrument panel or dashboard of the vehicle, and displays various information to the driver. Specifically, for example, the HMI displays information to the driver indicating whether a function controlled by the ADAS ECU 10 (e.g., ACC, AD, AEB (Autonomous Emergency Braking), LKS (Lane Keeping Assist System), etc.) is running or stopped, and whether learning related to the function has been stopped or resumed.
[0020] The gateway 50 connects to other ECUs etc. mounted on the vehicle and acquires vehicle information related to the driving operation by the driver (vehicle speed, steering operation amount, accelerator operation amount, brake operation amount, etc.). The gateway 50 also connects to a predetermined server by SOTA (software on the air), that is, via a TCU (telecom unit) mounted on the vehicle and a network such as a mobile phone communication network (neither of which are shown), and acquires and updates software such as application programs executed by the ADAS ECU 10.
[0021] FIG. 2 is a functional block diagram showing an example configuration of the ADAS ECU 10. The ADAS ECU 10 has an arithmetic unit and a storage device. The arithmetic unit is a processor (e.g., a microcomputer) that executes programs stored in the storage device. The arithmetic unit executes predetermined programs to realize the functional blocks of an ADAS application 11, a control parameter calculation unit 12, and an ECU state determination unit 13, which will be described later. The storage device includes a nonvolatile storage area and a volatile storage area. The nonvolatile storage area includes a program area that stores programs executed by the arithmetic unit and a data area that temporarily stores data used by the arithmetic unit when executing the programs. The volatile storage area stores data used by the arithmetic unit when executing the programs.
[0022] The ADAS application 11 realizes one or more driving assistance functions and application (AP) monitoring functions as an ADAS by having the computing device deploy and execute different application programs in memory. Here, the driving assistance functions as an ADAS include, for example, ACC, AD, AEB, LKS, and aiming of the camera 30. The ADAS application 11 corresponds to a function realization unit of the present invention.
[0023] The AP monitoring function includes a function for monitoring the status of the driving assistance function (for example, whether or not the driving assistance function is running, whether or not learning processing related to the driving assistance function is running, etc.), a timer function for measuring the stop time of the driving assistance function and its learning processing, and a function for monitoring initialization (when the ECU is replaced or a reset signal is input) and resetting the timer. Furthermore, the ADAS application 11 requests the control parameter calculation unit 12 to start and stop learning processing related to the driving assistance function. Furthermore, the ADAS application 11 controls the driving assistance function according to the control parameters input from the control parameter calculation unit 12.
[0024] The control parameter calculation unit 12 executes learning processing related to the driving assistance function in response to a request from the ADAS application 11 to start learning processing related to the driving assistance function, and generates control parameters for controlling the driving assistance function based on the learning results.
[0025] Specifically, for example, the control parameter calculation unit 12 learns the driver's driving characteristics based on vehicle information when the driving assistance function is not being executed by the ADAS application 11 (i.e., vehicle information reflecting the driver's own driving habits, etc.) and sensor output. Then, when the driving assistance function is being executed by the ADAS application 11, the control parameter calculation unit 12 generates control parameters (acceleration, deceleration, inter-vehicle distance, etc.) for controlling the driving assistance function so that the driver's driving characteristics are reflected, and outputs the control parameters to the ADAS application 11. Note that any method may be used to learn the driver's driving characteristics and generate the control parameters, and for example, a machine learning model or artificial intelligence may be used.
[0026] Furthermore, the control parameter calculation unit 12 calculates and stores driving parameters (e.g., acceleration, deceleration, inter-vehicle distance, etc.) that represent the actual driving state when the driving assistance function is being executed, based on the vehicle information and sensor output when the driving assistance function is being executed by the ADAS application 11. Note that since the driving parameters reflect the control parameters for controlling the driving assistance function, the range of fluctuation in the driving parameters narrows and converges as learning of the driver's driving characteristics progresses. Hereinafter, the driving parameters will also be referred to as control parameters.
[0027] Furthermore, when the calculated and accumulated control parameters converge (i.e., when learning of the driver's driving characteristics progresses), the control parameter calculation unit 12 requests the ECU state determination unit 13 to stop the learning process.
[0028] The ECU state determination unit 13 controls the release and allocation of resources (computational resources and memory resources) possessed by the ADAS ECU 10. For example, in response to a request to stop the learning process from the control parameter calculation unit 12, the ECU state determination unit 13 determines whether the ADAS ECU 10 is in a state where the learning process can be stopped, and if it determines that the learning process can be stopped, it stops the learning process by the control parameter calculation unit 12 via the ADAS application 11 and allocates the resources of the ADAS ECU 10 that have been released accordingly to another function. If it determines that the learning process cannot be stopped, it cancels the request to stop the learning process. The ECU state determination unit 13 corresponds to a state determination unit in the present invention.
[0029] <Learning Optimization Processing by the ADAS ECU 10> FIG. 3 is a flowchart showing an example of the learning optimization processing by the ADAS ECU 10. As shown in FIG.
[0030] The learning optimization process is repeatedly executed, for example, while the vehicle equipped with the ADAS ECU 10 is in a state in which it can travel (for example, while the ignition switch is turned on). It is assumed that when the learning optimization process is started, a learning process for learning the driving characteristics of the driver is being executed.
[0031] First, the control parameter calculation unit 12 executes a control parameter calculation process (step S01). Specifically, the control parameter calculation unit 12 calculates and stores driving parameters (control parameters) that represent driving characteristics when the driving assistance function is being performed, based on vehicle information and sensor outputs when the driving assistance function is being performed.
[0032] Next, the control parameter calculation unit 12 executes a control parameter determination process (step S02). Specifically, the control parameter calculation unit 12 determines whether the control parameters calculated and accumulated in step S01 have converged (i.e., whether the learning process of the driver's driving characteristics has progressed to an extent that the learning process can be stopped), and if the control parameters have converged, requests the ECU state determination unit 13 to stop the learning process.
[0033] Next, the ECU state determination unit 13 executes ECU state / SW management processing (step S03). Specifically, in response to a request to stop the learning process from the control parameter calculation unit 12, the ECU state determination unit 13 determines whether the ADAS ECU 10 is in a state where the learning process can be stopped. If it is determined that the learning process can be stopped, the ECU state determination unit 13 stops the learning process by the control parameter calculation unit 12 via the ADAS application 11, and allocates the resources of the ADAS ECU 10 that are released accordingly to other functions. If it is determined that the learning process cannot be stopped, the request to stop the learning process is canceled. This concludes an example of the learning optimization processing.
[0034] Next, the details of steps S01 to S03 of the learning optimization process will be described. Fig. 4 is a flowchart showing an example of the control parameter calculation process in step S01.
[0035] The following description will be given taking as an example a case where the acceleration and deceleration of the vehicle and the distance to a vehicle traveling ahead (hereinafter referred to as a preceding vehicle) are calculated as control parameters.
[0036] First, the control parameter calculation unit 12 determines whether or not ACC (adaptive control) is currently being executed (step S11). If it is determined that ACC is being executed (YES in step S11), the control parameter calculation unit 12 then determines whether or not a preceding vehicle is present within a predetermined distance ahead (for example, 110 m when the vehicle speed is 100 km / h) (step S12).
[0037] If it is determined that a preceding vehicle exists at a predetermined distance ahead (YES in step S12), the control parameter calculation unit 12 then calculates the current vehicle speed V now is acquired (step S13).
[0038] Next, the control parameter calculation unit 12 calculates the distance D between the vehicle and the preceding vehicle based on, for example, various sensors 31. now is acquired (step S14).
[0039] Next, the control parameter calculation unit 12 calculates the vehicle speed V now Current average distance Davn-1 is set as follows (step S15): D avn-1 =D avn
[0040] Next, the control parameter calculation unit 12 calculates the average inter-vehicle distance D for each of the low speed band, the medium speed band, and the high speed band according to the following equation: avn (Step S16), where N is the number of samples of the inter-vehicle distance for each vehicle speed range. avn = (D avn-1 ×(N-1)+D now ) / N
[0041] Next, the control parameter calculation unit 12 calculates the current vehicle speed V now , the current inter-vehicle distance D acquired in step S14 now , and the average inter-vehicle distance D at the vehicle speed calculated in step S16 avn A time stamp is added to the image data and the image data is stored in a storage device (step S17).
[0042] Next, the control parameter calculation unit 12 calculates the current vehicle speed V obtained in step S13. now and the vehicle speed at that time acquired in step S13 of the previously executed control parameter calculation process is divided by the time difference between the timings at which the vehicle speeds were acquired based on the time stamps to calculate the acceleration (or deceleration) and store the result in the storage device (step S18). This completes the control parameter calculation process.
[0043] If the control parameter calculation unit 12 determines in step S11 that ACC is not being performed (YES in step S11), or if it determines in step S12 that there is no preceding vehicle within a predetermined distance ahead (NO in step S12), the control parameter calculation unit 12 skips the subsequent processes and ends the control parameter calculation process.
[0044] 5 is a flowchart showing an example of the control parameter determination process in step S02. In the following description, the control parameter is the distance to the preceding vehicle.
[0045] First, the control parameter calculation unit 12 determines whether or not a predetermined number of control parameters calculated in the control parameter calculation process of step S01 are present in the storage device (step S21). If it is determined that the predetermined number of control parameters are present in the storage device (YES in step S21), the control parameter calculation unit 12 then acquires the driving control parameters (step S22).
[0046] Next, the control parameter calculation unit 12 calculates the standard deviation s and average value of the control parameter (step S23), and determines whether the standard deviation s of the control parameter has converged (step S24). Specifically, it determines whether data (95% of the data) within ±2 s of the average value of the control parameter falls within a range of ±10% of the average value. For example, if the average inter-vehicle distance in the high-speed range is 110 m, it is determined that convergence has occurred if data within ±2 s of the average value falls within a range of 99 m to 121 m. However, the lower limit is set to a predetermined safe distance.
[0047] If it is determined that the standard deviation s of the control parameters has converged (YES in step S24), the control parameter calculation unit 12 then calculates the standard error SE of the control parameters (step S25) and determines whether the standard error SE of the control parameters has converged (step S26). Specifically, it determines whether the standard error SE falls within a range of ±5% of the average value of the control parameters. For example, if the average inter-vehicle distance in the high-speed zone is 110 m, it is determined that convergence has occurred if 2SE falls within a range of 104.5 m to 115.5 m. However, the lower limit is set to a predetermined safe distance.
[0048] If it is determined that the standard error SE of the control parameters has converged (YES in step S25), the control parameter calculation unit 12 then requests the ECU state determination unit 13 to stop the learning process.
[0049] If the control parameter calculation unit 12 determines in step S24 that the standard deviation s of the control parameters has not converged (NO in step S24), or if it determines in step S26 that the standard error SE of the control parameters has not converged (NO in step S26), the control parameter determination process ends without requesting the ECU state determination unit 13 to stop the learning process. This completes the description of one example of the control parameter determination process.
[0050] The execution order of steps S23 and S24 and steps S25 and S26 may be interchanged.
[0051] Next, FIG. 6 is a flowchart showing an example of the ECU state / SW management process in step S03.
[0052] First, the ECU state determination unit 13 determines whether or not there is a request from the control parameter calculation unit 12 to stop the currently executing learning process (step S31). If it is determined that there is no request to stop the currently executing learning process (NO in step S31), the ECU state / SW management process is terminated. Conversely, if it is determined that there is a request to stop the currently executing learning process (YES in step S31), the ECU state determination unit 13 next determines whether or not the vehicle state is such that the currently executing learning process can be stopped (step S32).
[0053] If it is determined that the vehicle is in a state where the ongoing learning process can be stopped (OK in step S32), the ECU state determination unit 13 then determines whether or not there are other drivers in the vehicle (drivers with different driving characteristics who should be individually learned) other than the driver currently driving (step S33). This determination is made based on, for example, whether multiple driver seat positions are registered or whether multiple different smart keys or remote control keys are being used.
[0054] If it is determined that there is no driver other than the driver currently driving the vehicle (NO in step S33), the ECU state determination unit 13 then acquires resource information (usage amounts of computational resources and memory resources) used by the ongoing learning process (step S34). Specifically, the resource information is acquired by referring to a table (not shown) that was generated during the design of the ADAS ECU 10 and pre-recorded in a recording device (a table that records the amount of computational resources and memory resources required in association with each function and learning process).
[0055] Next, the ECU state determination unit 13 reconstructs the resource information of the ADAS ECU 10 (step S35). Specifically, the ECU state determination unit 13 calculates the amount of resources that will be released if the learning process currently being executed is stopped.
[0056] Next, the ECU state determination unit 13 determines whether there is a new function to be added to the ADAS application 11 from the outside by SOTA or the like and executed (step S36). If it is determined that a new function exists (YES in step S36), the ECU state determination unit 13 then executes a software verification process for the new function (step S37). Specifically, for example, the ECU state determination unit 13 may cause the ADAS application 11 to test-launch the new function or check the hash value to verify that the application program corresponding to the new function has not been tampered with. After the software verification process, the ECU state determination unit 13 then requests the ADAS application 11 to launch the new function (step S38).
[0057] Next, when the ECU state determination unit 13 stops the ongoing learning process, it determines whether or not the necessary resources can be allocated to the new function (step S39). If it is determined that the necessary resources can be allocated to the new function (YES in step S39), the ECU state determination unit 13 then instructs the ADAS application 11 to stop the ongoing learning process, and the ADAS application 11 instructs the control parameter calculation unit 12 to stop the ongoing learning process (step S40).
[0058] Then, after the resources are released by stopping the learning process that is being executed, the ECU state determination unit 13 then causes the ADAS application 11 to activate the new function (step S41).
[0059] If it is determined in step S39 that the necessary resources cannot be allocated to the new function (NO in step S39), the ECU state determination unit 13 then discards the request to stop the learning process that is currently being executed, thereby continuing the execution of the learning process (step S42).
[0060] Also, if it is determined in step S36 that no new function exists (NO in step S36), the ECU state determination unit 13 then queries the AP monitoring function to determine whether there are any other learning processes that are currently stopped (step S43).
[0061] Here, if it is determined that there is another learning process that is currently stopped (YES in step S43), the ECU status determination unit 13 then queries the AP monitoring function to determine whether a predetermined period has elapsed since the other learning process was stopped (step S44).
[0062] If it is determined that a predetermined period of time has elapsed since the other learning process was stopped (YES in step S44), the ECU state determination unit 13 then requests the ADAS application 11 to start the other learning process (step S45). The process then proceeds to step S39, where the ECU state determination unit 13 determines whether the necessary resources can be allocated to the other learning process when the ongoing learning process is stopped. If it determines that the necessary resources can be allocated to the other learning process (YES in step S39), the ongoing learning process is stopped (step S40). After the resources are released by stopping the ongoing learning process, the other learning process is started (step S41). This allows the stopped learning process to be resumed.
[0063] Furthermore, if it is determined in step S32 that the vehicle state is not such that the ongoing learning process can be stopped (NG in step S32), if it is determined in step S33 that a driver other than the driver currently driving the vehicle is present (YES in step S33), if it is determined in step S43 that no other learning process is currently stopped (YES in step S43), or if it is determined in step S44 that a predetermined period of time has elapsed since the other learning process was stopped (YES in step S44), the process proceeds to step S42, where the request to stop the ongoing learning process is discarded, and the ongoing learning process continues (step S42). This concludes an example of the ECU state / SW management process.
[0064] When the ECU status / SW management process stops the learning process in progress, starts a new function, or restarts a stopped learning process, the HMI display unit 40 displays the event. This allows the driver to recognize the status of the learning process, the addition of a new function, etc.
[0065] According to this embodiment, it is possible to determine whether learning of the driver's driving characteristics is progressing based on the convergence status of the control parameters, and if learning of the driver's driving characteristics is progressing, the learning process can be stopped, the resources can be released, and the released resources can be allocated to new functions or other learning processes.
[0066] The present invention is not limited to the above-described embodiments, and various modifications are possible. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to those including all of the described configurations. Furthermore, it is possible to replace part of the configuration of one embodiment with or add to the configuration of another embodiment.
[0067] Furthermore, some or all of the aforementioned configurations, functions, processing units, processing means, etc. may be implemented in hardware, for example, by designing them as integrated circuits. Furthermore, the aforementioned configurations, functions, etc. may be implemented in software by a processor interpreting and executing programs that implement the respective functions. Information such as programs, tables, and files that implement the respective functions may be stored in memory, a recording device such as a hard disk or SSD, or a recording medium such as an IC card, SD card, or DVD. Furthermore, the control lines and information lines shown are those considered necessary for explanation, and do not necessarily represent all control lines and information lines in the product. In reality, it can be assumed that almost all components are interconnected.
Claims
1. A vehicle control device mounted on a vehicle, comprising: an arithmetic unit and a storage device, wherein the arithmetic unit executes an application program deployed on memory to implement a driving assistance function for a driver of the vehicle; a control parameter calculation unit wherein the arithmetic unit executes a learning process to learn the driving characteristics of the driver based on sensor output and vehicle information when the driving assistance function is not being executed, and generates control parameters for controlling the driving assistance function based on the results of the learning process when the driving assistance function is being executed; and a state determination unit wherein the arithmetic unit controls the release and allocation of resources possessed by the vehicle control device for the driving assistance function and the learning process, wherein the control parameter calculation unit requests the learning process to be stopped when the accumulated control parameters have converged, and the state determination unit, in response to the request to stop the learning process, terminates the learning process, thereby releasing the resources used for the learning process.
2. A vehicle control device according to claim 1, characterized in that the state determination unit allocates the resources released by the completion of the learning process to a driving assistance function that is not being executed.
3. A vehicle control device according to claim 1, wherein the state determination unit allocates the resources released by the completion of the learning process to another learning process that is currently stopped.
4. A vehicle control device as described in claim 3, characterized in that the state determination unit allocates the resources released by the completion of the learning process to another learning process that is currently stopped after a predetermined period of time has passed since the stoppage.
5. A vehicle control device as described in claim 1, characterized in that, when there is neither a driving assistance function to be executed nor any other learning process, the state determination unit discards the request to stop the learning process and continues the learning process.
6. A vehicle control device according to claim 1, further comprising a display unit that notifies the driver of the execution status of at least one of the driving assistance function and the learning process.
7. A vehicle control device as described in claim 1, characterized in that the function realization unit realizes an application monitoring function including at least one of a function to monitor the state of the driving assistance function, a function to count the stop time of the driving assistance function, a function to monitor the state of the learning process, a function to count the stop time of the learning process, and a function to reset the clock at initialization.
8. A vehicle control method executed by a vehicle control device mounted on a vehicle, the vehicle control device having an arithmetic unit and a storage device, the vehicle control method comprising the steps of: the arithmetic unit executing a learning process to learn the driving characteristics of the driver based on sensor output and vehicle information when a driving assistance function for the driver of the vehicle is not being executed; the arithmetic unit generating control parameters for controlling the driving assistance function based on the results of the learning process when the driving assistance function is being executed; the arithmetic unit requesting that the learning process be stopped if the accumulated control parameters have converged; and the arithmetic unit terminating the learning process in response to the request to stop the learning process, thereby releasing resources of the vehicle control device used for the learning process.