MODELING OF FUEL CONSUMPTION USING ARTIFICIAL NEURAL NETWORKS

The article presents a model of operational fuel consumption by a passenger car from the B segment, powered by a spark ignition engine. The model was developed using artificial neural networks simulated in the Stuttgart Neural Network Simulator (SNNS) package. The data for the model was obtained from longterm operational tests, during which data from the engine control unit were recorded via the OBDII diagnostic interface. The model is based on neural networks with two hidden layers, the size of which was selected using an original iterative algorithm. During the structure selection process, a total of 576 different networks were tested. The analysis of the obtained test errors made it possible to select the optimal structure of the 6-19-17-1 model. The network input values were: vehicle speed and acceleration, road slope, throttle opening degree, selected gear number and engine speed. The networks were trained using the efficient RPROP method. A correctly trained network, based on the set parameters, was able to forecast the instantaneous fuel consumption. These forecasts showed a high correlation with the measured values. Average fuel consumption calculated on their basis was close to the real value, which was calculated on the basis of two consecutive fuelings of the vehicle.


INTRODUCTION
Transport is 94% dependent on oil [3]. Fuel consumption is directly related to CO2 emissions. As stated in [6] road transport generates up to 92% CO2 emissions from the transport sector. In the European Union, it is responsible for approx. 20% of the total emissions of this gas [20,11]. Passenger cars have the largest share in this emission. They generate 15% of CO2 in the EU [20].
The fuel consumption of a given car depends on [21,4,18]: cruise speed, driver acceleration aggressiveness, road slope, tire pressure. As stated in [21], fuel consumption per 100 km is optimal at the speed of 50-70 km/h. It increases rapidly with increasing acceleration [21].
Driving technique has a significant influence on a car's fuel consumption. For example, the use of a driving strategy with seed variations consisting in alternate acceleration and deceleration while driving in a neutral gear ratio (deceleration) performed with gear in neutral position allows for fuel consumption reduction from a few % to 30% compared to driving at a constant speed [4].
The second important group of factors determining the fuel consumption of a car are its design features, such as [4]: weight, body shape determining the aerodynamic drag, design and DIAGNOSTYKA, Vol. 21, No. 4 (2020) Witaszek K.: Modeling of fuel consumption using artificial neural networks 104 swept volume of the engine, design of the driveline, e.g. its electrification of the powertrain in hybrid cars. It allows, for example, to recover energy during braking events. However, plug-in hybrid cars and fully electric cars face significant market barriers including high prices, short drive ranges, long charging times and an insufficient recharging infrastructure [24]. The advantage of electric cars is about 3.4 times lower energy consumption compared to conventional ones [8].
As already mentioned, the design of the engine has an impact on fuel consumption. For example, diesel motor vehicles consume approximately 12% less fuel than gasoline-fueled vehicles [6]. The use of safety assistance driving systems in a car also affects fuel consumption [28]. There are also other technical solutions aimed at lowering fuel consumption, such as the use of photovoltaic panels on the car roof proposed by the authors of the work [11]. The introduction of technical improvements resulting in more fuel efficient cars does not always contribute to the overall reduction of fuel. As reported in [23], it favors the increase in popularity of larger, heavier and more powerful cars. This is because car buyers consider their size and power [15] the most important. Hence, heavier and more powerful cars [23] are becoming more and more popular in many regions of the world. Fuel economy is less important for new car buyers [15,25]. Used car buyers pay more attention to fuel economy [26].
Other factors also affect fuel consumption. In [10], fuel consumption was reduced by 13% on hot days thanks to the use of an aluminum coating reflecting sunlight on a passenger car body. This made it possible to limit the power needed to operate the air conditioning system. An example of another factor that affects fuel consumption is the altitude of the road on which the car is traveling. For example, thanks to the lower air density, the dynamic resistance is reduced, which usually leads to a slight decrease in fuel consumption (2.5-3.5% for the altitude of 2200 m above sea level) compared to driving on the road located at a low altitude above sea level [28].

MODELING OF FUEL CONSUMPTION
Usually fuel consumption is expressed in liters per hundred kilometers (l/100 km) or miles per gallon (mpg) [3]. Finding the dependence of fuel consumption on various factors allows us to forecast fuel consumption prediction and work out a method of its reduction [21,19].
Fuel consumption models can be classified as follows [13]: -engine map based models, in which fuel consumption is calculated on the basis of an engine map, which is a matrix. They are accurate but require a large amount of data for each car; -regression based models using statistical models developed on the basis of regression of the results of real experiments. The physical interpretation of results of such calculations is limited. It is also important not to take into account too many explanatory variables in the regression; -load based models, use physical equations to describe the phenomena that trigger fuel consumption. Such models are complex and require high computational effort; -hybrid models combining two of the abovementioned kinds. They combine the advantages of different models to reduce computation time, increase accuracy and facilitate calibration. In diesel engines fuel consumption can be calculated using the method based on processing the pressure data from inside the cylinder [7]. Fuel consumption models can be implemented into microscopic traffic simulation software, which allows the evaluation of the environmental impact of transportation management strategies [22].
In work [26], fuel consumption was modeled using an artificial neural network. It makes it possible to predict the average consumption in urban and extra-urban driving for new cars. Its input sizes are: make of car, engine style, weight of car, vehicle type and transmission system type. However, it does not allow for the determination of the instantaneous fuel consumption, e.g. depending on traffic conditions.

FUEL CONSUMPTION TESTS
The operational research on fuel consumption was started in November 2014 and lasted nearly five years for the car described in this article. They were completed with the sale of the vehicle in October 2019. Researches were performed during the normal, everyday use of a passenger car, related to the satisfaction of individual transport needs, such as commuting to work and other trips in Poland. The tests consisted of continuous data recording from the engine control unit.
A sedan passenger car from the B segment was used as the research object. It was a Renault Thalia I vehicle, produced in 2003, powered by a K7J 700 spark-ignition engine with a displacement of 1,390 cm 3 . It was characterized by a rated power of 55kW (75HP). This unit has the opinion of a quite reliable construction, probably thanks to the simple structure. The cylinder head of this four-cylinder engine has only 8 valves (4 inlet and 4 exhaust). It is a multi-point indirect injection power unit, which can be equipped with a sequential 4th generation LPG system at reasonable costs. In July 2015, a STAG LPG installation based on the QBOX Basic controller, AC W02 injectors and R02 reducer was installed in the tested car. The gas system was correctly tuned, which was confirmed by tests on a chassis dynamometer. In the tested car, the necessary consumables such as oils, filters and ongoing repairs were carried out in order to keep the research facility in a good technical condition.

Equipment and methodology of research
The standard OBDII (On-Board Diagnostic level 2) diagnostic connector was used to obtain data. Using the inexpensive and widely available ELM327 adapter mounted directly in the OBDII socket, it was possible to read data from the vehicle's engine control unit (ECU). The socket was under the ashtray, so for easy access, a second ashtray was purchased, the bottom of which was cut out and the lid spring was removed. Such a modified ashtray was installed in place of the original part. Before each trip, the ELM327 adapter was connected to the OBDII socket, and the springless ashtray cover fell by gravity, while not overloading the socket by pressing on the back wall of the adapter. A standard version of the ELM327 was purchased, equipped with a wireless Bluetooth communication interface. For some time, the miniaturized version of the ELM327 adapter was also used, although, as practice has shown, this model has a lower durability and usually fails after about a year of use. The ELM327 adapter sent data read from the engine ECU to the Samsung Galaxy S4 Mini (GT9195) smartphone via the Bluetooth interface. It is a device based on the Android 4.4.2 operating system, which was purchased in the fall of 2014. Due to its small size and the possibility of replacing the battery, this smartphone was very well suited as a mobile data logger. Torque version 1.8.158 was responsible for transmission and storage of data obtained from the engine control unit. After initial trials, a paid Pro version for Android was selected from the Google Play Store. The Pro version offers much wider possibilities, especially in terms of creating query diagrams sent to the car's ECU, automatic creation of subsequent trip logs, and saving the results. The TorquePro application also downloaded data from the integral modules of the Samsung Galaxy S4 mini, i.e. the GPS system and the acceleration sensor, during operation. During the tests, the smartphone saved the measurement data on a microSD card installed to text files in *.csv format with a frequency of 2 Sa/s. Long-term use of Bluetooth and GPS wireless transmission causes a noticeable increase in power consumption by the smartphone, therefore, to protect it from discharging the battery, it was connected to the Mean Well SD25A5 DC/DC impulse converter powered by a 12V car installation. The diagram of the test apparatus is shown in Figure 1.
The measurement data files saved on the smartphone's microSD card were quarterly copied to a PC and saved to external media in order to prevent their loss. Additionally, information related to the refueling of the vehicle was collected. The amount of refueled fuel, its price, refueling date and information about the location of the fuel station were entered into the measurement table.

Equipment and methodology of research
Over the course of nearly 5 years, the tested Renault Thalia car traveled a distance of over 90.5 thousand km, which made it possible to obtain over 4.6 GB of measurement data related to its operation. After the preliminary testing stage, the Torque application chose to create a trip log each time Torque was connected to the car's ECU, and therefore the dataset includes approximately 4600 *.csv files.
The structure of the main trip log file stored in the Torque application database consisted of 22 columns of comma separated data, referred to in the application as PID. The engine controller of the tested vehicle provided information on 10 parameters of the engine and car operation, while the remaining 12 were collected from sensors and modules of the GT9195 smartphone. The data fields and their sources are presented in Table 1. The data in some columns were recorded for the needs of other studies, while in this paper 11 types DIAGNOSTYKA, Vol. 21, No. 4 (2020) Witaszek K.: Modeling of fuel consumption using artificial neural networks 106 of measured quantities were selected for further elaboration. In table 1 they are marked in green.
The creation of the operational fuel consumption model was preceded by an analysis of the factors influencing the vehicle's energy consumption. According to the theory of motor vehicle traffic, there are several types of resistance to motion, which the car uses energy to overcome. For internal combustion cars, it is the chemical energy contained in the fuel. Thermal machines in the form of combustion engines are used to convert it into mechanical energy useful for propulsion purposes. However, due to their limited efficiency, a significant part of it is emitted to the environment in the form of thermal energy.
Mechanical energy is spent on overcoming the following resistances: internal friction, rolling, hill, aerodynamic and to acceleration. The user of the vehicle has little influence on some of them, as they depend on the car's structure. In other cases, however, changing one driving style can bring noticeable savings.
In order to successfully create a model of operational fuel consumption with the help of artificial neural networks, it was necessary to develop raw measurement data and process them into at least two separate data sets -training string and test string. It was decided that the model will take into account information about the speed of the vehicle, its acceleration and road gradient. The data on the selected gear, the degree of throttle opening and the engine speed will also be entered. Additional assumptions were made that the data recorded during engine warm-up and when the vehicle was stationary were not taken into account.
In order to take into account the influence of the road slope on fuel consumption in the constructed model, it was necessary to calculate the slope on the basis of the height above sea level transmitted by the GPS module. The GT9195 smartphone takes these measurements with an accuracy of one meter. The data has some random noise that could affect the calculated road slope gradient. Therefore, the calculations were carried out each time for the distance traveled in at least 20 seconds. Taking into account the large number of files with measurement data, in order to efficiently carry out the calculations, the use of spreadsheets was abandoned and own software was written operating in batch mode. The program was written and compiled using Free Pascal ver. 3.2.0. The software prepared in such a way (dH.exe) made it possible to make calculations for all collected files with minimal user intervention, which was limited to generating a list of files. Due to the different sampling frequencies of the GPS module and the OBD connector in the data files, it was possible to notice the aliasing phenomenon, therefore when creating the dH program, a procedure acting as an anti-aliasing filter was introduced into it. It was based on cyclical calculations of the slope of the regression line for a limited fragment of the set of designated measurement points. In the source file, the dH program searched for successive pairs of values of the trip distance traveled by the vehicle and the altitude above sea level, for which there was a change in the second of the described parameters. Then, according to the formula (1), for the central point of the interval with a given number of samples, the least squares method was used to calculate the slope of linear regression.
where: kindex of the central point of the range, phalf the length of the interval, li,trip distance, haverage value of altitude in the interval.
In the next iteration, the calculation interval was shifted by one point and the calculations were repeated (Fig. 2). The total length of the calculation interval pC was given by the formula 2: Based on the analysis of data from the GPS system, the value of the algorithm parameter p = 20 was determined experimentally. It allowed to reduce the influence of interferences and eliminate measurement noise. The result of the dH program was a text file (*._dH).
Another factor influencing the fuel consumption of a car is the dynamics of changes in the speed of its movement, i.e. acceleration. Although the Torque application records data from the acceleration sensor, which is one of the smartphone modules, these are instantaneous values additionally burdened with considerable noise. The acceleration sensor readings are additionally influenced by the tilt of the car's body and the centrifugal force that occurs when cornering the road. Due to the mobile nature of the measuring device, it was decided not to calibrate the position of the smartphone in relation to the vehicle each time. The acceleration of the vehicle was calculated DIAGNOSTYKA, Vol. 21, No. 4 (2020) Witaszek K.: Modeling of fuel consumption using artificial neural networks 107 from the changes in the speed of the car. The test results contain two information about the speed of the vehicle's movement: from the ECU and from the GPS system.
The first was used to calculate the acceleration, and the second was used to verify and detect possible errors in the data set. For this purpose, the dV.exe program was written, which was based on the above-described algorithm, but the independent variable was time, and the dependent variable was speed. Due to the lack of a clear aliasing phenomenon and lower measurement noise, it was possible to use a shorter calculation interval (p = 10). As a result, the results provided by the dV program better reflected the dynamics of changes in the speed of the tested car. The results of the program's work were also saved to text files (*._dV). However, to facilitate the subsequent data synchronization, they were supplemented with a column of data related to the distance travelled by the car.
Another information not appearing directly in the measurement results was the number of gear selected by the driver in the drive system. This was calculated on the basis of data from the ECU of the tested vehicle as a ratio of the engine RPM and the vehicle speed (vOBD). It should be noted that due to the clutch slippage and measurement inaccuracies, a certain gear selected corresponds to some range of RPM/vOBD ratio, which can be seen in the form of scattering of points in bold fields along the line of the most common values of that ratio. Due to the large number of results and more frequent slippage of the clutch when shifting gears in the speed range lower than 2800 rpm and speeds lower than 60 km/h, the data range above the ellipse expressed by formula 3 was selected to determine the limits of the gear ranges.
The following values of the ellipse coefficients were adopted in the calculations: e1 = 2800 and e2 = 60. For the analyzed range, data on engine RPM to vehicle speed ratios in the range 15… 300 were taken, because the values below 15 indicate the drive disengagement or the gear lever position in neutral. A RPM/vOBD ratio above 300 appears only with high clutch slippage when starting the car. Based on the selected range of data, which was marked in red in Figure 3a, a gear histogram was prepared (Figure 3b).
Based on the analysis of the histogram, the limits of the RPM/vOBD ratios corresponding to the individual gears were estimated (1 ... 5). Specific statistics such as an average and standard deviation values have also been taken into account (Table 2). Due to larger noise of RPM/vOBD ratio values in the 1st and 2nd gear ranges the ±2 estimation rule was used.  As before, due to the very large number of processed files, it was decided to develop a proprietary solution that works in batch mode. Another program has been created for this purpose -Trq_sel.exe. Its most important function, however, was to create a database from the collected research data and the results of the dH and dV programs, which would later be used as a basis for creating a fuel consumption model. The algorithm of operation of the Trq_sel program is shown in Figure 4. After loading the configuration data, the Trq_sel program opened three files for each trip -Torque trip log (*.csv) and previously created files with data on road gradient (*._dH) and vehicle acceleration (*._dV). Then, for each successive line of the trip log file, it calculated the gear value in the drive system and checked the conditions for rejecting a given record from the result set. In this case, the next one was loaded in place of the current line and the conditions checking process was repeated from the beginning. If, however, the line was not rejected, the data contained therein were supplemented with the corresponding values of vehicle acceleration, road inclination and the gear ratio selected in the drive system, and then added to a common database file.

NEURAL FUEL CONSUMPTION MODEL
Due to the large size of the research database, as well as their interrelationships, artificial neural networks were used to create the operational model of fuel consumption. For this purpose, the Stuttgart Neural Network Simulator (SNNS) software package was used. It is available free of charge under the LGPL Version 2 license. In addition to the typical work with the graphical user interface, the developers have also made available the functionality of working in batch mode, which allows SNNS to integrate with their own user software [2,12].

Data for teaching and testing artificial neural networks
Due to the large number of available database records, it was decided to train and test the network using randomly selected subsets. 41,460 records were selected from the database and the training set was created from them. The test set was created from 2,584 data records. Both were characterized by the structure presented in Table 3. The values of each of the input parameters were normalized to the range 0...1 [1,14] according to the formula 4: where: npi(k)normalized value of the input signal and the network for the k th pattern, pi(k)input and network signal value for the k th pattern, MINpi(k)the smallest input and network signal value for the entire database, MAXpi(k)the highest value of the input and network signal for the entire database In the same way, the output data used to train the network was normalized. Normalized data was recorded with an accuracy of three decimal places and saved to text files. According to the requirements of the SNNS program, these files were supplemented with headers and saved with the *.pat extension. In this form, they were ready for use.

Selection of learning parameters and network structure
Most of the common types of artificial neural networks are built of mathematical equivalents of neurons [5] arranged in successive layers. User signals are fed to the inputs of the neurons of the first layer, called the input layer. After processing, the signals from the outputs of these neurons are fed to the inputs of the units of the next group of neurons -the so-called hidden layer. Depending on the choice of structure, the network may have one or more hidden layers interconnected in succession. The last layer is made up of neurons whose output signals are available to the user and is called the output layer. In the process of training the network, signals from the training sequence file are fed to the network inputs, and the expected input signal is fed to the outputs. The learning supervisor makes small changes in the level of amplification of connections between neurons each time, so as to obtain a network response close to the assumed one. This process is repeated many times, and at the same time the level of errors generated by the network is monitored. Network training is continued over many cycles until the expected result is achieved or the training process fails. The network training process is also verified through a second data set -a test set whose data is slightly different from that used to train the network. Thanks to this, it is possible to assess the ability to generalize the acquired knowledge [9] through the artificial neural network.
The size and structure of the network affects its operation and the ability to model complex phenomena. Networks with a too narrow structure are not able to work out the expected solution and generate significant errors already at the training stage. Networks with an overly complex structure are effective in training, but they have impaired ability to generalize the acquired knowledge. This phenomenon is called "memorization" and can be detected when an increase in errors is observed for the test string. Therefore, the choice of a network structure is an original activity and many scenarios have arisen for it.
In this work, a proprietary solution was used, the software implementation of which was possible due to the fact that the authors of the SNNS package had direct access to the core of the network simulator. By omitting the graphical user interface, you can automatically input and output data, and supervise learning from your own software. Such a solution relieves the user from the necessity of constant interaction with the program and gives the possibility of constructing own, extensive scenarios of automatic supervision of the training process. Additionally, SNNS offers its own programming language (Batchman) which is very useful in conjunction with user-generated scripts.
In this work, the concept of automated creation and training of subsequent networks with an increasingly complex structure was used. For this purpose, the previously developed program mkNHH1net was used, which in combination with user scripts and the SNNS package was an efficient tool supporting the creation and teaching of a large number of artificial neural networks. A considerable advantage of the solution used was the possibility of shortening the computing time by deliberately dividing it between various processor threads. Before the creation process was started, data on network training was introduced into the base script. The SNNS package offers several dozen types of training functions, among which the Riedmiller and Braun's RPROP [16] (Resilient backPROPagation) heuristic algorithm was selected. This choice was dictated by the high speed of its work compared to other gradient algorithms. As a result of its operation, the learning coefficient η changes from the minimum value ηMIN = 10-5 to the maximum value ηMAX = 50. Its initial value (η0 = 0,1) and the change limits were adopted in accordance with the SNNS documentation. During learning, the weights of connections between neurons were modified in each cycle according to formula 5.
where: ij k -learning factor for weights of the links of neurons i and j in k th step, sgn -sign of argument, Wij(k) -weight of the link of neurons i and j, E[W(k)]target function, dependent on W(k) weight vector.
Network training was supervised by monitoring the value of Mean Square Error (MSE) [26,17], expressed as the relationship 6. (6) where: yi(k)calculated value of the output signal and the network for the k th test pattern, di(k)required value of the output signal and the network for the k th testing pat tern, nnumber of observations (data set size), qnumber of estimated parameters (network weights), Three conditions for completing network training are programmed in the base script. In the case when the MSE test error fell below the assumed value, it was assumed that the network was trained correctly. However, if the network, despite successive cycles, showed higher than expected errors, the training process could be completed in two ways. For networks achieving some progress, it ended with the lapse of the assumed maximum number of training cycles. An additional mechanism interrupting training has been provided for the networks that did not show any progress in training for a greater number of cycles. This prevented wasting time, CPU processing power and electricity.
The mkNHH1net program used the base script, which required assumptions regarding the maximum number of training cycles, the names of the training and testing sequence files, and the size limits of the created networks.
The result of its work was two main scripts. The first of them created new, still empty networks, and the second (LRNets) conducted and supervised the training process for each of them, using previously prepared sets of training and testing sequences. This script also saved the results of work in the form of text files. Files containing the trained networks (*.net) were saved and information about the course of the training process was logged (*.log) for further analysis. In the variant of the base script used, it was possible to save partially trained networks every given number of cycles. At the end, each network was subjected to an additional test from which a full report for the states of inputs and outputs was saved (*.res). To facilitate the interpretation of the results with the help of the Gnuplot program, graphs of training errors were created automatically.
In order to select the optimal structure for operational modeling of fuel consumption, a total of 576 networks were created and analyzed with the structure: -input layer of 6 neurons, -first hidden layer from 1 to 24 neurons, -second hidden layer from 1 to 24 neurons, -output layer 1 neuron. The time needed to perform training calculations and testing for such a set of nets was almost 35 hours. Figure 6 shows the dependence of the training time of the created networks on the size of its hidden layers.
In this figure, it can be seen that training networks with a complex internal structure takes much longer than networks with a small number of neurons. Larger networks contain a significant number of connections between neurons, and appropriate calculations must be made for each of them during training. The largest of the established networks had over 700 connections, while the smallest had only 8.  However, this is not a serious problem, because the structure of the network is selected mainly due to the level of errors they generate. The most important criterion is the value of the test mean squared error determined by the relationship 6. Its values for the created networks are shown in Figure  8. By introducing the results on the plane, several network areas with the desired properties can be seen. However, the optimal choice for the examined structures was to select a network with the first hidden layer composed of 19 neurons, and the second -of 17 neurons. Although the graph of the dependence of the average training error can be seen on more complex networks with smaller training errors (Fig. 9), however, these errors show lower possibilities of generalizing knowledge. This can be deduced from the higher test error values. Ultimately, a network with the following structure was selected: -input layer of 6 neurons, -first hidden layer from 19 neurons, -second layer hidden from 17 neurons, -output layer 1 neuron.
It took 1,700 cycles to train and ended with a testing error of 4,82*10 -4 .

ANALYSIS OF THE RESULTS AND VERIFICATION OF THE MODEL
In order to verify the operation of the neural model of fuel consumption by the tested car, data from a part of the journey on the A4 motorway was selected. These data did not occur in the training or testing sequence. The road section between MOP Rudka (Tarnów) and MOP III Kłaj (Bochnia) was selected. The selected route, approximately 41 km long, is shown in Figure 10.
The research data recorded during the drive along the selected route and the calculations of vehicle acceleration and road slope made on their basis are shown in Figure 11. The average vehicle speed was 98 km/h, and the maximum speed recorded was 123 km/h. For the most part, 5th gear was engaged, but it was also downshifted to 4th or even 3rd gear. The engine of the car was usually running at around 3200 RPM, but the maximum speed recorded was almost 6000 RPM. As the test car was not equipped with cruise control, the driver frequently changed the throttle position in the range of 18 -82%. The achieved accelerations rarely exceeded the value of 0.5 m*s-2, and the road slope ranged between -1.2% ... 1.6%. Based on the selected data, an additional test string containing 2584 data records (wer.pat) was created and used to test the trained network. The result report has been saved to a file (wer.res). On its basis, a spreadsheet was prepared that converted the normalized values into their appropriate units. Figure 12 shows the curves of the instantaneous fuel consumption values taken from the vehicle's ECU, as well as the corresponding forecasts of the model based on the artificial neural network. The data presented in Figure 12 show a high mutual correlation, the coefficient of which is R = 0.896, which shows mostly the correct operation of the trained network. Then, the average fuel consumption on the selected route was calculated and compared with the real average value calculated on the basis of vehicle refueling. Fuel was refilled at the Lotos station located at the starting point of the route -MOP Rudka, and then after leaving the A1 motorway and driving 213 kilometers. 25.61 l of LPG was refueled, which corresponds to the fuel consumption level of 12.02 l/100 km. Based on the history of vehicle operation, the conversion factor between the operation of the vehicle on gasoline (E5-95) and LPG was determined to be 1. 22.
The corresponding gasoline consumption on this route would therefore be 9.85 l/100 km. Which is a real value due to the transport of two bicycles on a roof rack. The fuel consumption values are compared in Table 4. The values included in it are similar, and the differences do not exceed 3%.
During the detailed analysis of the errors generated by the neural network, some areas with higher MSE values were noticed. Analysis of the recorded OBD data revealed that it was due to a failure of the car speed sensor installed in the gearbox. In this situation, there was a significant difference in the value of the speed measured by the vehicle's ECU and the GPS system. The time of occurrence of such errors was correlated with the car's service history and for the OBD data recorded after the sensor replacement in 2018, the network again generated smaller MSE errors. Therefore, the developed neural model of fuel consumption may also be useful in diagnosing the general technical condition of the tested vehicle.

CONCLUSIONS
The work uses artificial neural networks to develop an operational model of fuel consumption. This model was verified by comparing it with the actual fuel consumption calculated for two consecutive refueling of the vehicle and with the recorded test equipment values. Thus, the fuel consumption forecast values obtained from the neural model corresponded with a fairly large approximation to both the real values and those read from the engine control unit.
In order to obtain the most accurate model, the network structure was selected using a proprietary iterative algorithm. Its use made it possible to test a number of networks with different structures and to select the optimal variant. Continuous, automatic supervision over the network training process ensured obtaining a correctly trained network with the structure 6-19-17-1. This network showed almost 90% correlation with the instantaneous values measured for the route not occurring in the training process. The calculated average fuel consumption differed from the actual value by less than 3%.
The neural model of operational fuel consumption developed for a given vehicle can be used to check various driving style scenarios and provide a hint for the driver on how to reduce fuel consumption.