FR3086491A1 - ASSISTANCE IN DRIVING A VEHICLE BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION - Google Patents

ASSISTANCE IN DRIVING A VEHICLE BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION Download PDF

Info

Publication number
FR3086491A1
FR3086491A1 FR1858772A FR1858772A FR3086491A1 FR 3086491 A1 FR3086491 A1 FR 3086491A1 FR 1858772 A FR1858772 A FR 1858772A FR 1858772 A FR1858772 A FR 1858772A FR 3086491 A1 FR3086491 A1 FR 3086491A1
Authority
FR
France
Prior art keywords
vehicle
determined
representative
trajectory
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1858772A
Other languages
French (fr)
Other versions
FR3086491B1 (en
Inventor
Sergey Abrashov
Thibault Fouqueray
Thomas Hannagan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PSA Automobiles SA
Original Assignee
PSA Automobiles SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PSA Automobiles SA filed Critical PSA Automobiles SA
Priority to FR1858772A priority Critical patent/FR3086491B1/en
Publication of FR3086491A1 publication Critical patent/FR3086491A1/en
Application granted granted Critical
Publication of FR3086491B1 publication Critical patent/FR3086491B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)

Abstract

Un procédé assiste la conduite d'un véhicule circulant sur une voie de circulation et acquérant au moyen de capteur(s) des données représentatives de cette dernière. Ce procédé comprend : - une première étape (10-20) dans laquelle on détermine une trajectoire yref(x) que le véhicule doit suivre sur la voie de circulation en fonction des données acquises puis on détermine un vecteur d'état s représentatif d'un état en cours du véhicule par rapport à cette trajectoire yref(x), et - une seconde étape (30-40) dans laquelle on alimente un réseau neuronal avec ce vecteur d'état s afin qu'il détermine au moyen d'une fonction, définissant l'évolution d'un paramètre contribuant à une valeur f(s), représentative d'un angle de braquage du véhicule pour qu'il suive cette trajectoire yref(x), et comportant une fonction d'activation ϕ symétrique et impaire afin de supprimer tout biais de calcul.A method assists the driving of a vehicle traveling on a traffic lane and acquiring by means of sensor (s) data representative of the latter. This process includes: - a first step (10-20) in which a path yref (x) is determined which the vehicle must follow on the traffic lane as a function of the data acquired then a state vector s representative of a current state of the vehicle with respect to this trajectory yref (x), and - a second step (30-40) in which a neural network is supplied with this state vector s so that it determines by means of a function, defining the evolution of a parameter contributing to a value f (s), representative of a steering angle of the vehicle so that it follows this trajectory yref (x), and comprising an activation function ϕ symmetrical and odd in order to remove any calculation bias.

Description

ASSISTANCE À LA CONDUITE D’UN VÉHICULE, PAR DÉTERMINATION DE L’ANGLE DE BRAQUAGE AU MOYEN D’UN RÉSEAU NEURONAL SANS BIAIS DE CALCULASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION BIAS

L’invention concerne les véhicules à conduite au moins partiellement automatisée (ou autonome), et plus précisément l’assistance à la conduite de tels véhicules pour qu’ils suivent une trajectoire de référence.The invention relates to vehicles with at least partially automated (or autonomous) driving, and more specifically assistance in driving such vehicles so that they follow a reference trajectory.

Dans ce qui suit on considère qu’un véhicule est à conduite au moins partiellement automatisée (ou autonome) lorsqu’il peut être conduit de façon automatisée (partielle ou totale (sans intervention de son conducteur)) pendant une phase de conduite automatisée, ou de façon manuelle (et donc avec intervention de son conducteur sur le volant et/ou les pédales) pendant une phase de conduite manuelle.In what follows, it is considered that a vehicle is driven at least partially automated (or autonomous) when it can be driven automatically (partial or total (without intervention of its driver)) during an automated driving phase, or manually (and therefore with the driver intervening on the steering wheel and / or pedals) during a manual driving phase.

Comme le sait l’homme de l’art, certains véhicules définis ci-avant, généralement de type automobile, comprennent un dispositif d’assistance à la conduite (éventuellement de type ADAS (« Advanced Driver Assistance System »)) qui est chargé de déterminer la trajectoire de référence qu’ils doivent suivre sur leur voie de circulation et l’angle de braquage qui doit leur être imposé à chaque instant pour qu’ils suivent au mieux cette trajectoire de référence. Un tel dispositif d’assistance est donc chargé de contrôler de façon automatisée le positionnement transversal (ou latéral) de son véhicule par rapport à la voie de circulation sur laquelle il circule. Cet angle de braquage est ensuite instauré par une direction assistée électrique du véhicule.As those skilled in the art know, certain vehicles defined above, generally of the automobile type, include a driving assistance device (possibly of the ADAS (“Advanced Driver Assistance System”)) type which is responsible for determine the reference trajectory that they must follow on their lane and the steering angle that must be imposed on them at all times so that they best follow this reference trajectory. Such an assistance device is therefore responsible for automatically controlling the transverse (or lateral) positioning of its vehicle with respect to the traffic lane on which it is traveling. This steering angle is then set up by an electric power steering of the vehicle.

La détermination de la trajectoire de référence yref(x) que le véhicule doit suivre sur sa voie de circulation peut se faire en fonction de données représentatives de cette voie de circulation et acquises par au moins un capteur équipant ce véhicule, comme par exemple une caméra numérique.The determination of the reference trajectory y re f (x) that the vehicle must follow on its taxiway can be done as a function of data representative of this taxiway and acquired by at least one sensor equipping this vehicle, such as for example a digital camera.

La détermination de l’angle de braquage peut se faire en déterminant un vecteur d’état s qui est représentatif de l’état en cours du véhicule par rapport à cette trajectoire yref(x) déterminée, puis en alimentant un réseau neuronal (ou « neural network ») d’au moins une couche avec ce vecteur d’état s déterminé afin de déterminer une valeur f(s) qui est représentative de cet angle de braquage.The steering angle can be determined by determining a state vector s which is representative of the current state of the vehicle with respect to this determined trajectory y re f (x), then by supplying a neural network ( or "neural network") of at least one layer with this determined state vector s in order to determine a value f (s) which is representative of this steering angle.

Le réseau neuronal est défini dans un calculateur qui est embarqué dans le véhicule. Il peut être agencé sous une forme logicielle (ou « software ») ou bien logicielle et matérielle (ou « hardware »). Il est notamment décrit dans les articles accessibles aux adresses internet actuelles « https://skymind.ai/wiki/neural-network#define » et « https://www.researchgate.net/figure/Artificial-neural-network-ANNarchitecture-ANNs-consist-of-artificial-neurons-Each_fig1_5411405 ». Il est rappelé qu’un réseau neuronal de véhicule peut comporter une ou plusieurs couches (j = 1 à J) qui délivrent chacune en sortie une fonction //+1(s) définissant l’évolution d’un paramètre contribuant à la valeur f(s) représentative de l’angle de braquage en fonction du vecteur d’état s. Cette fonction est donnée par la relation :The neural network is defined in a computer which is embedded in the vehicle. It can be arranged in software (or "software") or software and hardware (or "hardware") form. It is notably described in the articles accessible to current internet addresses "https://skymind.ai/wiki/neural-network#define" and "https://www.researchgate.net/figure/Artificial-neural-network-ANNarchitecture -ANNs-consist-of-artificial-neurons-Each_fig1_5411405 ". It is recalled that a neural vehicle network can include one or more layers (j = 1 to J) which each deliver a function // +1 (s) defining the evolution of a parameter contributing to the value f (s) representative of the steering angle as a function of the state vector s. This function is given by the relation:

//+1(s) = <p7(ZLo 4 + bl), où <pj est une fonction d’activation (souvent non-linéaire) de la couche j, w/k est un poids associé à la fonction fA(s) de la couche j, e Θ, b{ est un biais de la fonction //(s), e 0,xJ k est l’un des paramètres (ou éléments) du vecteur d’état s (d’entrée) de la couche j (pouvant être la fonction ft'(s) de la couche précédente (j-1 ) ou une donnée d’entrée du vecteur d’état s), et Θ est l’espace des variables du réseau neuronal.// +1 (s) = <p 7 (ZLo 4 + bl), where <pj is an activation function (often non-linear) of the layer j, w / k is a weight associated with the function fA ( s) of layer j, e Θ, b {is a bias of the function // (s), e 0, x J k is one of the parameters (or elements) of the state vector s (input ) of layer j (possibly being the function ft '(s) of the previous layer (j-1) or an input datum of the state vector s), and Θ is the space of variables of the neural network.

Actuellement, la présence d’un biais b{ dans chaque fonction //+1(s) d’une couche (j+1) du réseau neuronal ralentit très fortement l’apprentissage et dégrade les performances d’une sortie f(s) qui représente correctement et précisément l’angle de braquage recherché. En outre, elle contraint à doubler le réseau neuronal pour prendre en compte le cas où le véhicule est à gauche de la trajectoire de référence yref(x) et le cas où le véhicule est à droite de la trajectoire de référence yref(x), ce qui s’avère chronophage et onéreux.Currently, the presence of a bias b {in each function // +1 (s) of a layer (j + 1) of the neural network considerably slows learning and degrades the performance of an output f (s) which correctly and precisely represents the desired steering angle. In addition, it forces to double the neural network to take into account the case where the vehicle is to the left of the reference path y re f (x) and the case where the vehicle is to the right of the reference path y re f (x), which is time consuming and expensive.

L’invention a notamment pour but d’améliorer la situation.The invention aims in particular to improve the situation.

Elle propose notamment à cet effet un procédé, d’une part, destiné à assister la conduite d’un véhicule à conduite au moins partiellement automatisée, circulant sur une voie de circulation et acquérant au moyen de capteur(s) des données représentatives de cette voie de circulation, et, d’autre part, comprenant une première étape dans laquelle on détermine une trajectoire yref(x) que le véhicule doit suivre sur la voie de circulation en fonction de ces données acquises puis on détermine un vecteur d’état s représentatif d’un état en cours du véhicule par rapport à cette trajectoire yref(x) déterminée, et une seconde étape dans laquelle on alimente un réseau neuronal d’au moins une couche avec ce vecteur d’état s déterminé afin de déterminer une valeur f(s) représentative d’un angle de braquage pour le véhicule pour qu’il suive cette trajectoire yref(x).It notably proposes for this purpose a method, on the one hand, intended to assist the driving of a vehicle with at least partially automated driving, traveling on a traffic lane and acquiring by means of sensor (s) data representative of this taxiway, and, on the other hand, comprising a first step in which a trajectory y re f (x) is determined which the vehicle must follow on the taxiway as a function of these acquired data then a vector of is determined state s representative of a current state of the vehicle with respect to this determined path y re f (x), and a second step in which a neural network of at least one layer is supplied with this state vector s determined so to determine a value f (s) representative of a steering angle for the vehicle so that it follows this trajectory y re f (x).

Ce procédé d’assistance se caractérise par le fait que dans sa seconde étape on utilise dans le réseau neuronal, pour chaque couche, une fonction d’activation φ, participant à une fonction définissant l’évolution d’un paramètre contribuant à la valeur f(s) représentative de l’angle de braquage en fonction du vecteur d’état s, et symétrique et impaire afin de supprimer tout biais de calcul.This assistance process is characterized by the fact that in its second step, in the neural network, an activation function φ is used for each layer, participating in a function defining the evolution of a parameter contributing to the value f (s) representative of the steering angle as a function of the state vector s, and symmetrical and odd in order to remove any calculation bias.

Grâce à cette utilisation de fonctions d’activation φ symétriques et impaires, les biais disparaissent des calculs, ce qui permet d’obtenir rapidement une sortie f(s) qui représente correctement et précisément l’angle de braquage recherché et d’éviter d’avoir à doubler la taille du réseau neuronal.Thanks to this use of symmetrical and odd activation functions les, the biases disappear from the calculations, which makes it possible to quickly obtain an output f (s) which correctly and precisely represents the desired steering angle and to avoid have to double the size of the neural network.

Le procédé d’assistance selon l’invention peut comporter d’autres caractéristiques qui peuvent être prises séparément ou en combinaison, et notamment :The assistance method according to the invention may include other characteristics which can be taken separately or in combination, and in particular:

- dans sa première étape la (chaque) fonction d’activation φ peut être une tangente hyperbolique ;- in its first step the (each) activation function φ can be a hyperbolic tangent;

- dans sa première étape on peut, par exemple et non limitativement, déterminer un vecteur d’état s qui comprend au moins une distance séparant de la trajectoire yref(x) déterminée un point déterminé sur une prolongation vers l’avant du véhicule d’un axe longitudinal médian de ce dernier, un angle de braquage en cours du véhicule et un angle de cap relatif à la trajectoire du véhicule ;in its first step, it is possible, for example and without limitation, to determine a state vector s which comprises at least a distance separating from the trajectory y re f (x) determined a determined point on an extension towards the front of the vehicle a longitudinal central axis of the latter, a steering angle during the vehicle and a heading angle relative to the trajectory of the vehicle;

> dans sa première étape on peut déterminer un vecteur d’état s comprenant, par exemple et non limitativement, cinq distances séparant de la trajectoire yref(x) déterminée respectivement cinq points déterminés sur la prolongation vers l’avant du véhicule de l’axe longitudinal médian de ce dernier, l’angle de braquage en cours du véhicule et l’angle de cap relatif à la trajectoire du véhicule ;> in its first step, it is possible to determine a state vector s comprising, for example and without limitation, five distances separating from the trajectory y re f (x) determined respectively five points determined on the forward extension of the vehicle of l 'median longitudinal axis of the latter, the steering angle in progress of the vehicle and the heading angle relative to the trajectory of the vehicle;

> dans sa première étape on peut utiliser des points dont les positions respectives sur l’axe longitudinal médian sont prédéfinies respectivement par xn = n*xo, où xo est une constante prédéfinie et n = 1 à N, N étant le nombre total de points utilisés ;> in its first step we can use points whose respective positions on the median longitudinal axis are predefined respectively by x n = n * xo, where xo is a predefined constant and n = 1 to N, N being the total number of points used;

> en variante, dans sa première étape on peut utiliser des points dont les positions respectives sur l’axe longitudinal médian sont définies respectivement par xn = n*vx*ôt, où vx est une vitesse longitudinale en cours du véhicule, ôt est une constante prédéfinie et n = 1 à N, N étant le nombre total de points utilisés ;> as a variant, in its first step, points can be used whose respective positions on the median longitudinal axis are defined respectively by x n = n * v x * ôt, where v x is a longitudinal speed in progress of the vehicle, ôt is a predefined constant and n = 1 to N, N being the total number of points used;

- dans sa première étape on peut déterminer la trajectoire yref(x) de sorte qu’elle soit placée à égale distance entre deux délimitations de la voie de circulation.- in its first stage, the path y re f (x) can be determined so that it is placed at equal distance between two delimitations of the taxiway.

L’invention propose également un produit programme d’ordinateur comprenant un jeu d’instructions qui, lorsqu’il est exécuté par des moyens de traitement, est propre à mettre en œuvre le procédé d’assistance décrit ciavant pour déterminer une valeur f(s) représentative d’un angle de braquage pour un véhicule à conduite au moins partiellement automatisée.The invention also provides a computer program product comprising a set of instructions which, when executed by processing means, is capable of implementing the assistance method described above for determining a value f (s ) representative of a steering angle for a vehicle with at least partially automated driving.

L’invention propose également un dispositif d’assistance, d’une part, destiné à équiper un véhicule à conduite au moins partiellement automatisée, circulant sur une voie de circulation et acquérant des données représentatives de cette voie de circulation, et, d’autre part, comprenant un calculateur déterminant une trajectoire yref(x) que le véhicule doit suivre sur cette voie de circulation en fonction de ces données acquises puis déterminant un vecteur d’état s représentatif d’un état en cours du véhicule par rapport à cette trajectoire yref(x) déterminée, puis alimentant avec ce vecteur d’état s déterminé un réseau neuronal d’au moins une couche, qu’il comprend, afin de déterminer une valeur f(s) représentative d’un angle de braquage pour le véhicule pour qu’il suive cette trajectoire yref(x).The invention also provides an assistance device, on the one hand, intended to equip a vehicle with at least partially automated driving, traveling on a traffic lane and acquiring data representative of this traffic lane, and, on the other hand part, comprising a computer determining a trajectory y re f (x) that the vehicle must follow on this traffic lane as a function of these acquired data then determining a state vector s representative of a current state of the vehicle with respect to this trajectory y re f (x) determined, then supplying with this state vector s determined a neural network of at least one layer, which it comprises, in order to determine a value f (s) representative of an angle of steering for the vehicle so that it follows this trajectory y re f (x).

Ce dispositif d’assistance se caractérise par le fait que son calculateur utilise dans son réseau neuronal, pour chaque couche, une fonction d’activation φ, participant à une fonction définissant l’évolution d’un paramètre contribuant à la valeur f(s) représentative de l’angle de braquage en fonction du vecteur d’état s, et symétrique et impaire afin de supprimer tout biais de calcul.This assistance device is characterized by the fact that its calculator uses in its neural network, for each layer, an activation function φ, participating in a function defining the evolution of a parameter contributing to the value f (s) representative of the steering angle as a function of the state vector s, and symmetrical and odd in order to remove any calculation bias.

L’invention propose également un véhicule, éventuellement de type automobile, à conduite au moins partiellement automatisée, propre à circuler sur une voie de circulation et acquérant au moyen de capteur(s) des données représentatives de cette voie de circulation, et comprenant un dispositif d’assistance du type de celui présenté ci-avant.The invention also provides a vehicle, possibly of the automobile type, with at least partially automated driving, capable of traveling on a traffic lane and acquiring by means of sensor (s) data representative of this traffic lane, and comprising a device assistance type of that presented above.

D’autres caractéristiques et avantages de l’invention apparaîtront à l’examen de la description détaillée ci-après, et des dessins annexés, sur lesquels :Other characteristics and advantages of the invention will appear on examining the detailed description below, and the attached drawings, in which:

- la figure 1 illustre schématiquement et fonctionnellement un véhicule situé sur l’une des deux voies de circulation d’une route et équipé d’un capteur, de circuits d’analyse et d’un exemple de réalisation d’un dispositif d’assistance selon l’invention, et- Figure 1 schematically and functionally illustrates a vehicle located on one of the two traffic lanes of a road and equipped with a sensor, analysis circuits and an embodiment of an assistance device according to the invention, and

- la figure 2 illustre schématiquement un exemple d’algorithme mettant en œuvre un procédé d’assistance selon l’invention.FIG. 2 schematically illustrates an example of an algorithm implementing an assistance method according to the invention.

L’invention a notamment pour but de proposer un procédé d’assistance, et un dispositif d’assistance DA associé, destinés à permettre la détermination de façon automatisée au moyen d’un réseau neuronal d’une valeur f(s) représentative d’un angle de braquage pour un véhicule V à conduite au moins partiellement automatisée (ou autonome), pour qu’il suive une trajectoire de référence yref(x).The object of the invention is in particular to propose an assistance method, and an associated DA assistance device, intended to allow the automated determination by means of a neural network of a value f (s) representative of a steering angle for a vehicle V with at least partially automated (or autonomous) driving, so that it follows a reference trajectory y re f (x).

Dans ce qui suit, on considère, à titre d’exemple non limitatif, que le véhicule V est de type automobile. Il s’agit par exemple d’une voiture. Mais l’invention n’est pas limitée à ce type de véhicule. Elle concerne en effet tout type de véhicule terrestre pouvant circuler sur des voies de circulation terrestres.In what follows, it is considered, by way of nonlimiting example, that vehicle V is of the automobile type. This is for example a car. However, the invention is not limited to this type of vehicle. It concerns in fact any type of land vehicle which can circulate on land traffic lanes.

Sur la figure 1 la direction X est la direction longitudinale du véhicule V, laquelle est sensiblement parallèle aux côtés latéraux comportant les portières latérales, et la direction Y est la direction transversale du véhicule V, laquelle est perpendiculaire à la direction X.In FIG. 1, the direction X is the longitudinal direction of the vehicle V, which is substantially parallel to the lateral sides comprising the side doors, and the direction Y is the transverse direction of the vehicle V, which is perpendicular to the direction X.

On a schématiquement et fonctionnellement représenté sur la figure 1 un véhicule V circulant sur l’une des deux voies de circulation VC et VC’ d’une route R. On notera que le véhicule V circule ici sur la voie de circulation VC qui est encadrée (ou délimitée) par deux délimitations d1 et d2.There is schematically and functionally represented in FIG. 1 a vehicle V traveling on one of the two traffic lanes VC and VC 'of a road R. It will be noted that vehicle V is traveling here on the traffic lane VC which is framed (or delimited) by two delimitations d1 and d2.

Ce véhicule V comprend au moins un capteur CP, des circuits d’analyse CAN et un exemple de réalisation d’un dispositif d’assistance DA selon l’invention.This vehicle V comprises at least one sensor CP, CAN analysis circuits and an exemplary embodiment of a DA assistance device according to the invention.

Ce capteur CP comprend au moins une caméra numérique installée dans une partie avant du véhicule (par exemple sur le pare-brise ou sur le rétroviseur intérieur), et chargée d’acquérir des images numériques dans l’environnement qui est au moins situé devant le véhicule V (ainsi qu’éventuellement sur une partie des deux côtés latéraux de ce dernier (V)).This CP sensor comprises at least one digital camera installed in a front part of the vehicle (for example on the windshield or on the interior mirror), and responsible for acquiring digital images in the environment which is at least situated in front of the vehicle V (as well as possibly on a part of the two lateral sides of the latter (V)).

On notera que le nombre de capteurs CP est ici égal à un (1), mais il peut prendre n’importe quelle valeur supérieure ou égale à un (1) (au moins un capteur sur l’avant), dès lors que cela permet d’acquérir des données dans l’environnement qui est au moins situé devant le véhicule V. Ainsi, le véhicule V pourrait aussi comprendre au moins un capteur à ultrasons, ou au moins un radar ou lidar, ou encore au moins une autre caméra installée dans une partie arrière et/ou des caméras installées sur ses deux côtés latéraux.Note that the number of CP sensors here is equal to one (1), but it can take any value greater than or equal to one (1) (at least one sensor on the front), as long as this allows acquire data in the environment which is at least located in front of vehicle V. Thus, vehicle V could also include at least one ultrasonic sensor, or at least one radar or lidar, or at least one other camera installed in a rear part and / or cameras installed on its two lateral sides.

Les circuits d’analyse CAN sont agencés de manière à analyser au moins les images numériques, acquises par le capteur CP dans l’environnement situé au moins devant le véhicule V, afin de déterminer des données qui sont représentatives au moins de la voie de circulation VC sur laquelle circule le véhicule V. Par exemple, ces données peuvent notamment définir les portions des deux délimitations d1 et d2 de la voie de circulation VC sur laquelle circule le véhicule V et éventuellement l’angle de lacet en cours de ce dernier (V). D’une manière générale, il existe une quasi infinité de vecteurs d’états s utilisables, pourvu qu’ils soient symétriques impairs par rapport à la variation d’angle du volant (si f(x)=A0, alors f(-x)=-A0). On peut donc utiliser un très grand nombre de données d’entrée pourvu qu’elles soient symétriques impaires par rapport à la variation d’angle du volant.The CAN analysis circuits are arranged so as to analyze at least the digital images, acquired by the sensor CP in the environment located at least in front of the vehicle V, in order to determine data which are representative at least of the traffic lane VC on which the vehicle V travels. For example, this data can in particular define the portions of the two delimitations d1 and d2 of the taxiway VC on which the vehicle V travels and possibly the current yaw angle of the latter (V ). In general, there are almost infinite usable state vectors s, provided that they are odd symmetrical with respect to the angle variation of the steering wheel (if f (x) = A0, then f (-x ) = - A0). We can therefore use a very large number of input data provided that they are symmetrical odd with respect to the angle variation of the wheel.

Dans l’exemple illustré non limitativement sur la figure 1, les circuits d’analyse CAN font partie d’un calculateur CAL embarqué dans le véhicule V. Mais cela n’est pas obligatoire. En effet, les circuits d’analyse CAN pourraient comprendre leur propre calculateur. Par conséquent, les circuits d’analyse CAN peuvent être réalisés sous la forme d’une combinaison de circuits ou composants électriques ou électroniques (ou « hardware ») et de modules logiciels (ou informatiques ou encore « software »).In the example illustrated without limitation in FIG. 1, the CAN analysis circuits are part of a CAL computer on board the vehicle V. But this is not compulsory. Indeed, the CAN analysis circuits could include their own computer. Consequently, the CAN analysis circuits can be produced in the form of a combination of electrical or electronic circuits or components (or "hardware") and software modules (or computer or even "software").

Les données acquises, représentant les délimitations d1 et d2 peuvent, par exemple, être des points (ayant une coordonnée longitudinale (suivant X) et une coordonnée transversale (suivant Y)) dans un référentiel choisi attaché au véhicule V (par exemple au centre de son extrémité avant), et représentatifs respectivement de portions de délimitation détectées, par exemple, dans une image numérique acquise par le capteur CP. On notera que ces données peuvent aussi définir le cap du véhicule V, et/ou l’estimée de la courbure d’une délimitation ainsi qu’éventuellement l’estimée de la dérivée de cette courbure, et/ou la largeur d’une délimitation, par exemple.The data acquired, representing the delimitations d1 and d2 can, for example, be points (having a longitudinal coordinate (along X) and a transverse coordinate (along Y)) in a chosen frame of reference attached to the vehicle V (for example in the center of its front end), and respectively representative of delimiting portions detected, for example, in a digital image acquired by the sensor CP. It will be noted that these data can also define the heading of the vehicle V, and / or the estimate of the curvature of a delimitation as well as possibly the estimate of the derivative of this curvature, and / or the width of a delimitation. , for example.

Comme évoqué plus haut, l’invention propose notamment un procédé d’assistance destiné à permettre la détermination de façon automatisée d’une valeur f(s) représentative d’un angle de braquage 0SW pour le véhicule V, pour qu’il suive une trajectoire de référence yref(x).As mentioned above, the invention proposes in particular an assistance method intended to allow the automated determination of a value f (s) representative of a steering angle 0 SW for the vehicle V, so that it follows a reference trajectory y re f (x).

Ce procédé d’assistance peut être au moins partiellement mis en œuvre par le dispositif d’assistance DA qui comprend à cet effet au moins un calculateur CA. Ce dernier (CA) peut, par exemple, comprendre au moins un processeur de signal numérique (ou DSP (« Digital Signal Processor »)), éventuellement associé à au moins une mémoire.This assistance process can be at least partially implemented by the assistance device DA which includes for this purpose at least one computer CA. The latter (CA) can, for example, comprise at least one digital signal processor (or DSP ("Digital Signal Processor")), possibly associated with at least one memory.

On notera que ce dispositif d’assistance DA est éventuellement de type ADAS (Advanced Driver Assistance System).Note that this DA assistance device is possibly of the ADAS (Advanced Driver Assistance System) type.

On notera également que le calculateur CA peut éventuellement assurer au sein du véhicule V au moins une autre fonction que celle qui fait l’objet de l’invention. Ainsi, il pourrait, par exemple, comprendre les circuits d’analyse CAN.It will also be noted that the computer CA may possibly perform within the vehicle V at least one other function than that which is the subject of the invention. Thus, he could, for example, understand the CAN analysis circuits.

Le procédé d’assistance, selon l’invention, comprend des première 1020 et seconde 30-40 étapes.The assistance process according to the invention comprises first 1020 and second 30-40 steps.

Dans la première étape 10-20 du procédé, on (le calculateur CA) commence par déterminer une trajectoire yref(x) que le véhicule V doit suivre sur sa voie de circulation VC en fonction des données acquises par le(s) capteur(s) CP.In the first step 10-20 of the method, one (the computer CA) begins by determining a trajectory y re f (x) that the vehicle V must follow on its taxiway VC as a function of the data acquired by the sensor (s) (s) CP.

Par exemple, dans la première étape 10-20 on (le calculateur CA) peut déterminer la trajectoire de référence yref(x) de sorte qu’elle soit placée à égale distance entre les délimitations d1 et d2. Mais cela n’est pas obligatoire. On peut en effet imaginer que la trajectoire de référence yref(x) soit plus proche de l’une des deux délimitations d1 et d2, éventuellement par choix du conducteur du véhicule V. En variante, on peut aussi travailler sans les distances et seulement avec des angles de cap relatif, par exemple.For example, in the first step 10-20 on (the computer CA) can determine the reference trajectory y re f (x) so that it is placed at equal distance between the delimitations d1 and d2. But this is not compulsory. One can indeed imagine that the reference trajectory y re f (x) is closer to one of the two delimitations d1 and d2, possibly by choice of the driver of the vehicle V. As a variant, one can also work without the distances and only with relative heading angles, for example.

Egalement par exemple, dans la première étape 10-20 on (le calculateur CA) peut, par exemple, déterminer la trajectoire de référence yref(x) au moyen d’un polynôme de degré 2 yref(x) = a + b*x + c*x2, où a, b et c sont les coefficients du polynôme.Also for example, in the first step 10-20 on (the CA calculator) can, for example, determine the reference trajectory y re f (x) by means of a polynomial of degree 2 y re f (x) = a + b * x + c * x 2 , where a, b and c are the coefficients of the polynomial.

Puis, dans la première étape 10-20 du procédé on (le calculateur CA) détermine un vecteur d’état s qui est représentatif d’un état en cours du véhicule V par rapport à cette trajectoire de référence yref(x) qu’il vient de déterminer.Then, in the first step 10-20 of the method we (the computer CA) determines a state vector s which is representative of a current state of the vehicle V with respect to this reference trajectory y re f (x) qu 'he just determined.

Par exemple, dans la première étape 10-20 on (le calculateur CA) peut déterminer un vecteur d’état s qui comprend au moins une distance dn séparant de la trajectoire de référence yref(x) venant d’être déterminée un point pn, déterminé sur une prolongation vers l’avant du véhicule V d’un axe longitudinal médian AL de ce dernier (V), un angle de braquage en cours 0steer du véhicule V, et un angle de cap <pcap relatif à la trajectoire du véhicule V avec 0steer et(pcap e [-π; π]. L’indice n varie de 1 à N, avec N > 1. N est un paramètre d’algorithme, qui peut être défini par défaut.For example, in the first step 10-20 on (the computer CA) can determine a state vector s which comprises at least a distance d n separating from the reference trajectory y re f (x) having just been determined a point p n , determined on a prolongation towards the front of the vehicle V of a median longitudinal axis AL of the latter (V), a steering angle in progress 0 steer of the vehicle V, and a heading angle <p relative cap at the vehicle trajectory V with 0 steer and (p cap e [-π; π]. The index n varies from 1 to N, with N> 1. N is an algorithm parameter, which can be defined by default .

Chaque distance dn est par exemple définie par la distance séparant un point pn de sa projection orthogonale sur l’axe longitudinal médian AL.Each distance d n is for example defined by the distance separating a point p n from its orthogonal projection on the median longitudinal axis AL.

De préférence, on choisit un nombre N relativement important, car plus ce nombre N est élevé plus l’angle de braquage 0sw à déterminer est précis.Preferably, a relatively large number N is chosen, because the higher this number N, the more precise the steering angle 0 sw to be determined.

A titre d’exemple, et comme illustré non limitativement sur la figureBy way of example, and as illustrated without limitation in the figure

1, dans l’étape du procédé on peut déterminer un état s qui est défini par cinq distances di à ds (n = 1 à 5, N = 5), l’angle de braquage en cours 0steer du véhicule V et l’angle de cap <pcap relatif à la trajectoire du véhicule V.1, in the process step we can determine a state s which is defined by five distances di to ds (n = 1 to 5, N = 5), the current steering angle 0 steer of the vehicle V and the heading angle <p heading relative to the trajectory of the vehicle V.

Chacune des distances dn peut être déterminée à partir de données qui sont fournies soit par un dispositif d’aide à la navigation très précis et embarqué dans le véhicule V, soit par les circuits d’analyse CAN.Each of the distances d n can be determined from data which is supplied either by a very precise navigation aid device and on board the vehicle V, or by the CAN analysis circuits.

Par exemple, et comme illustré non limitativement sur la figure 1, dans la première étape 10-20 on (le calculateur CA) peut utiliser des points pn dont les positions respectives sur l’axe longitudinal médian AL sont prédéfinies respectivement parxn = n*xo, où xo est une constante prédéfinie. Ainsi, lorsque N = 5, on utilise cinq points pi à ps de l’axe longitudinal médian AL qui sont respectivement espacés du véhicule V de cinq distances xo (pour p-ι), X2 = 2*xo (pour P2), Χ3 = 3*xo (pour ps), Χ4 = 4*xo (pour P4), et xs = 5*xo (pour ps). On comprendra que dans cet exemple, les N distances xn sont fixes (et prédéfinies). Par exemple, xo peut être comprise entre 3 mètres et 10 mètres. A titre d’exemple, on peut choisir xo égale à 5 mètres.For example, and as illustrated without limitation in FIG. 1, in the first step 10-20 on (the computer CA) can use points p n whose respective positions on the median longitudinal axis AL are predefined respectively by x n = n * xo, where xo is a predefined constant. Thus, when N = 5, five points pi to ps of the median longitudinal axis AL are used which are respectively spaced from the vehicle V by five distances xo (for p-ι), X2 = 2 * xo (for P2), Χ3 = 3 * xo (for ps), Χ4 = 4 * xo (for P4), and xs = 5 * xo (for ps). It will be understood that in this example, the N distances x n are fixed (and predefined). For example, xo can be between 3 meters and 10 meters. As an example, we can choose xo equal to 5 meters.

Dans une variante, dans la première étape 10-20 on (le calculateur CA) peut utiliser des points pn dont les positions respectives sur l’axe longitudinal médian AL sont définies respectivement par xn = n*vx*ôt, où vx est une vitesse longitudinale en cours du véhicule V et ôt est une constante prédéfinie. On comprendra que dans cette variante, les N distances xn ne sont pas fixes, mais variables en fonction de la vitesse longitudinale en cours du véhicule V. Par exemple, ôt peut être comprise entre 0,1 seconde et 3 secondes. On notera que ôt peut dépendre de N.In a variant, in the first step 10-20 on (the calculator CA) can use points p n whose respective positions on the median longitudinal axis AL are defined respectively by x n = n * v x * ôt, where v x is a current longitudinal speed of the vehicle V and ôt is a predefined constant. It will be understood that in this variant, the N distances x n are not fixed, but variable as a function of the longitudinal speed in progress of the vehicle V. For example, ôt can be between 0.1 seconds and 3 seconds. Note that ôt can depend on N.

Dans la seconde étape 30-40 du procédé, on (le calculateur CA) alimente un réseau neuronal, qu’il comprend et comprenant au moins une couche (j = 1 à J), avec le vecteur d’état s, déterminé dans la première étape 10-20, afin de déterminer une valeur f(s) qui est représentative d’un angle de braquage 0sw pour le véhicule V pour qu’il suive la trajectoire de référence yref(x), également déterminée dans la première étape 10-20.In the second step 30-40 of the method, one (the CA calculator) feeds a neural network, which it comprises and comprising at least one layer (j = 1 to J), with the state vector s, determined in the first step 10-20, in order to determine a value f (s) which is representative of a steering angle 0 sw for the vehicle V so that it follows the reference trajectory y re f (x), also determined in the first step 10-20.

Dans cette seconde étape 30-40 on (le calculateur CA) utilise dans son réseau neuronal, pour chaque couche (j), une fonction d’activation cpj qui participe à une fonction //+1(s) définissant l’évolution d’un paramètre contribuant à cette valeur f(s) (représentative de l’angle de braquage 0SW) en fonction du vecteur d’état s, et qui est symétrique et impaire afin de supprimer tout biais de calcul. On comprendra que la fonction //+1(s) est la sortie de la couche j du réseau neuronal qui contribue à la sortie f(s) de ce dernier. Par conséquent, lorsque J = 1 la fonction //+1(s) est égale à f(s) et donc est la sortie du réseau neuronal.In this second step 30-40 we (the CA calculator) use in its neural network, for each layer (j), an activation function cpj which participates in a function // +1 (s) defining the evolution of a parameter contributing to this value f (s) (representative of the steering angle 0 SW ) as a function of the state vector s, and which is symmetrical and odd in order to remove any calculation bias. It will be understood that the function // +1 (s) is the output of layer j of the neural network which contributes to the output f (s) of the latter. Consequently, when J = 1 the function // +1 (s) is equal to f (s) and therefore is the output of the neural network.

La raison pour laquelle l’utilisation d’une fonction d’activation cpj symétrique et impaire permet de supprimer tout biais de calcul est expliquée ci-dessous.The reason why the use of a symmetric and odd cpj activation function makes it possible to remove any calculation bias is explained below.

Tout d’abord, il est rappelé que chaque couche (j = 1 à J) du réseau neuronal du calculateur CA utilise une fonction //+1(s) qui définit l’évolution d’un paramètre contribuant à la valeur f(s) représentative de l’angle de braquage 0SW en fonction du vecteur d’état s, et qui est donnée par la relation : //+1(s) = <p7(ZLo xk + bJt\ où ψ] est la fonction d’activation de la couche j, w(k est le poids associé à la fonction f/Çs) de la couche j, e Θ, b{ est le biais de la fonction e 0,xk est l’un des paramètres du vecteur d’état s de la couche j (qui peut être la fonction f/Çs) de la couche précédente (j-1) ou l’un des éléments du vecteur d’état s dans le cas de la première couche (j = 1)), et Θ est l’espace des variables du réseau neuronal. Dans la première couche (j = 1) les xJk sont les éléments du vecteur d’état s, tandis que dans la seconde couche les xJk sont les fonctions /^(s) obtenues en sortie de la première couche (on a alors en sortie de la seconde couche /^(s) = φ2(Σκ=ο w2 k fk + fy2)), et ainsi de suite.First of all, it is recalled that each layer (j = 1 to J) of the neural network of the computer CA uses a function // +1 (s) which defines the evolution of a parameter contributing to the value f (s ) representative of the steering angle 0SW as a function of the state vector s, and which is given by the relation: // +1 (s) = <p7 (ZLo x k + b J t \ where ψ] is the activation function of layer j, w ( k is the weight associated with the function f / Çs) of layer j, e Θ, b {is the bias of the function e 0, x k is one of the parameters of the state vector s of layer j (which can be the function f / Çs) of the previous layer (j-1) or one of the elements of the state vector s in the case of the first layer (j = 1)), and Θ is the space of variables of the neural network. In the first layer (j = 1) the x J k are the elements of the state vector s, while in the second layer the x J k are the functions / ^ (s) obtained at the output of the first layer (we then has the output of the second layer / ^ (s) = φ 2 (Σκ = ο w 2 k fk + fy 2 )), and so on.

Lorsque chaque fonction d’activation est symétrique et impaire, on a alors //+1(s) = -//+1(-s), et par conséquent :When each activation function is symmetrical and odd, we then have // +1 (s) = - // +1 (-s), and therefore:

<Pj (ZLo xk + ) = ~<Pj (ZLo -wU xk + bJû= <Pj &Nk=p x^-bl), d’où l’on peut déduire (Z/Lo©.^ + = (£k=owikxk ~ b{), et donc b{ =<Pj (ZLo x k +) = ~ <Pj (ZLo -wU x k + b J û = <Pj & N k = px ^ -bl), from which we can deduce (Z / Lo ©. ^ + = (£ k = o w ik x k ~ b {), and therefore b {=

-b{, ce qui n’est possible qu’à condition que chaque b{ soit égal à zéro (0).-b {, which is only possible if each b {is equal to zero (0).

On notera qu’en présence de deux couches (j) associées respectivement à deux fonctions f(s) = -f(-s) et f’(s) = -f (-s), la composition de ces deux fonctions donne :It will be noted that in the presence of two layers (j) associated respectively with two functions f (s) = -f (-s) and f ’(s) = -f (-s), the composition of these two functions gives:

f ° /'W = /(/'(-S)) = -/([-/'(-S)]) = -/(/'(-S)) = ~f ° /'(-S), et par conséquent cette composition de fonctions symétriques et impaires donne encore une fonction symétrique et impaire.f ° / 'W = / (/' (- S)) = - / ([- / '(- S)]) = - / (/' (- S)) = ~ f ° / '(- S) , and therefore this composition of symmetrical and odd functions still gives a symmetrical and odd function.

Ainsi, en utilisant des fonctions d’activation φ7 symétriques et impaires, tous les biais b{ disparaissent des calculs, et donc on peut obtenir rapidement une sortie f(s) du réseau neuronal qui représente correctement et précisément l’angle de braquage 0SW recherché. Cela permet en outre d’éviter d’avoir à doubler la taille du réseau neuronal, comme c’est le cas dans un dispositif d’assistance de l’art antérieur.Thus, by using symmetrical and odd activation functions φ 7 , all the biases b {disappear from the calculations, and therefore we can quickly obtain an output f (s) of the neural network which correctly and precisely represents the steering angle 0 SW sought. This also makes it possible to avoid having to double the size of the neural network, as is the case in a assistance device of the prior art.

Par exemple, dans la seconde étape 30-40 chaque fonction d’activation φ7 associée à une couche (j) du réseau neuronal peut être une tangente hyperbolique ou une fonction f(x) = x. Plus généralement, on peut utiliser toute fonction symétrique impaire.For example, in the second step 30-40 each activation function φ 7 associated with a layer (j) of the neural network can be a hyperbolic tangent or a function f (x) = x. More generally, any odd symmetric function can be used.

On notera qu’afin de simplifier l’apprentissage on peut utiliser un réseau adapté uniquement aux virages à gauche, puis utiliser l’opposé de ce même réseau pour l’appliquer aux virages à droite.Note that in order to simplify learning, we can use a network suitable only for left turns, then use the opposite of this same network to apply it to right turns.

On notera que la valeur f(s) qui est délivrée en sortie du réseau neuronal du calculateur CA peut être égale à l’angle de braquage 0SW. Mais dans une variante de réalisation cette valeur f(s) pourrait être la variation de l’angle de braquage. Une fois l’angle de braquage 0SW (ou la valeur qui le représente) déterminé(e), on l’utilise ensuite pour générer au moins une commande pour au moins la direction assistée électrique du véhicule V. Puis, cette commande est instaurée pour que ce dernier (V) suive au mieux la trajectoire de référence yref(x) déterminée. On notera que d’autres commandes peuvent aussi être déterminées pour d’autres organes impliqués dans les déplacements du véhicule V, comme par exemple le groupe motopropulseur (ou GMP), le système de freinage, et les moyens de changement de vitesse (par exemple une boîte de vitesses automatique).It will be noted that the value f (s) which is delivered at the output of the neural network of the computer CA can be equal to the steering angle 0 SW . But in an alternative embodiment this value f (s) could be the variation of the steering angle. Once the steering angle 0 SW (or the value which represents it) has been determined, it is then used to generate at least one command for at least the electric power steering of vehicle V. Then, this command is established so that the latter (V) best follows the reference path y re f (x) determined. It will be noted that other commands can also be determined for other members involved in the movements of vehicle V, such as for example the powertrain (or GMP), the braking system, and the speed change means (for example an automatic gearbox).

On a schématiquement illustré sur la figure 2 un exemple d’algorithme mettant en oeuvre l’étape du procédé d’assistance décrit ci-avant.An example of an algorithm implementing the step of the assistance method described above has been schematically illustrated in FIG. 2.

Cette étape commence par une première sous-étape 10 de la première étape dans laquelle on (le calculateur CA) détermine une trajectoire de référence yref(x) que le véhicule V doit suivre sur sa voie de circulationThis step begins with a first sub-step 10 of the first step in which one (the computer CA) determines a reference trajectory y re f (x) that the vehicle V must follow on its lane.

VC en fonction des données acquises par le(s) capteur(s) CP.VC according to the data acquired by the CP sensor (s).

Puis, dans une deuxième sous-étape 20 de la première étape on (le calculateur CA) détermine un vecteur d’état s qui est représentatif d’un état en cours du véhicule V par rapport à la trajectoire de référence yref(x) qu’il vient de déterminer dans la première sous-étape 10.Then, in a second sub-step 20 of the first step on (the computer CA) determines a state vector s which is representative of a current state of the vehicle V relative to the reference trajectory y re f (x ) that it has just determined in the first sub-step 10.

Puis, dans une troisième sous-étape 30 de la seconde étape on (le calculateur CA) alimente le réseau neuronal avec le vecteur d’état s, déterminé dans la deuxième sous-étape 20.Then, in a third sub-step 30 of the second step we (the CA calculator) feeds the neural network with the state vector s, determined in the second sub-step 20.

Enfin, dans une quatrième sous-étape 40 de la seconde étape on (le calculateur CA) détermine, en utilisant une fonction d’activation φ symétrique et impaire pour chaque couche j du réseau neuronal, une valeur f(s) qui est représentative d’un angle de braquage 0sw pour le véhicule V pour qu’il suive la trajectoire de référence yref(x) déterminée dans la première sous-étape 10.Finally, in a fourth sub-step 40 of the second step on (the computer CA) determines, using an activation function φ symmetrical and odd for each layer j of the neural network, a value f (s) which is representative of 'a steering angle 0 sw for the vehicle V so that it follows the reference path y re f (x) determined in the first sub-step 10.

On notera que l’invention propose aussi un produit programme d’ordinateur comprenant un jeu d’instructions qui, lorsqu’il est exécuté par des moyens de traitement de type circuits électroniques (ou hardware), comme par exemple le calculateur CA, est propre à mettre en œuvre le procédé d’assistance décrit ci-avant pour déterminer une valeur f(s) représentative de l’angle de braquage 0sw du véhicule V.It will be noted that the invention also proposes a computer program product comprising a set of instructions which, when executed by processing means of the electronic circuits (or hardware) type, such as for example the CA computer, is specific implementing the assistance method described above to determine a value f (s) representative of the steering angle 0 sw of the vehicle V.

On notera également que sur la figure 1 le dispositif d’assistance DA est très schématiquement illustré avec seulement son calculateur CA. Ce dispositif d’assistance DA peut prendre la forme d’un boîtier comprenant des circuits intégrés (ou imprimés), ou bien de plusieurs circuits intégrés (ou imprimés) reliés par des connections filaires ou non filaires. On entend par circuit intégré (ou imprimé) tout type de dispositif apte à effectuer au moins une opération électrique ou électronique. Comme évoqué plus haut, ce dispositif d’assistance DA peut comprendre au moins un processeur, par exemple de signal numérique (ou DSP (Digital Signal Processor)), une mémoire vive pour stocker des instructions pour la mise en œuvre par ce processeur du procédé d’assistance tel que décrit ci-avant, et une mémoire de masse notamment pour le stockage des données acquises, et des valeurs intermédiaires intervenant dans tous les calculs du réseau neuronal. Le calculateur CA reçoit au moins les données déterminées par les circuits d’analyse CAN et, par exemple, la vitesse longitudinale vx du véhicule V (accessible par exemple sur le réseau de communication de ce dernier (V) (éventuellement multiplexé)), pour les utiliser dans des calculs, éventuellement après les avoir mises en forme et/ou démodulées et/ou amplifiées, de façon connue en soi.It will also be noted that in FIG. 1 the assistance device DA is very schematically illustrated with only its computer CA. This DA assistance device can take the form of a box comprising integrated (or printed) circuits, or else of several integrated (or printed) circuits connected by wired or non-wired connections. The term integrated circuit (or printed circuit) means any type of device capable of performing at least one electrical or electronic operation. As mentioned above, this DA assistance device can comprise at least one processor, for example of digital signal (or DSP (Digital Signal Processor)), a random access memory to store instructions for the implementation by this processor of the process assistance as described above, and a mass memory in particular for storing the acquired data, and intermediate values involved in all the calculations of the neural network. The computer CA receives at least the data determined by the CAN analysis circuits and, for example, the longitudinal speed v x of the vehicle V (accessible for example on the latter's communication network (V) (possibly multiplexed)), to use them in calculations, possibly after having shaped and / or demodulated and / or amplified them, in a manner known per se.

Le dispositif d’assistance DA peut également comporter une interface d’entrée pour la réception d’au moins les données déterminées par les circuits d’analyse CAN, et une interface de sortie pour la transmission des résultats de ses calculs.The DA assistance device can also include an input interface for receiving at least the data determined by the CAN analysis circuits, and an output interface for transmitting the results of its calculations.

Une ou plusieurs sous-étapes de l’une au moins des première 10-20 io et seconde 30-40 étapes du procédé d’assistance peuvent être effectuées par des composants différents. Ainsi, le procédé d’assistance peut-être mis en œuvre par une pluralité de processeurs, mémoire vive, mémoire de masse, interface d’entrée, interface de sortie et/ou processeur de signal numérique. Dans ces situations, le dispositif d’assistance DA peut-être 15 décentralisé, au sein d’un réseau local (plusieurs processeurs reliés entre eux par exemple) ou d’un réseau étendu.One or more substeps of at least one of the first 10-20 io and second 30-40 steps of the assistance process can be carried out by different components. Thus, the assistance method can be implemented by a plurality of processors, random access memory, mass memory, input interface, output interface and / or digital signal processor. In these situations, the DA assistance device may be decentralized, within a local network (several processors linked together for example) or a wide area network.

Claims (10)

1. Procédé d’assistance à la conduite d’un véhicule (V) à conduite au moins partiellement automatisée, circulant sur une voie de circulation (VC) et acquérant au moyen de capteur(s) des données représentatives de cette voie de circulation (VC), ledit procédé comprenant une première étape (10-20) dans laquelle on détermine une trajectoire yref(x) que ledit véhicule (V) doit suivre sur ladite voie de circulation (VC) en fonction desdites données acquises puis on détermine un vecteur d’état s représentatif d’un état en cours dudit véhicule (V) par rapport à cette trajectoire yref(x) déterminée, et une seconde étape (30-40) dans laquelle on alimente un réseau neuronal d’au moins une couche avec ledit vecteur d’état s déterminé afin de déterminer une valeur f(s) représentative d’un angle de braquage pour ledit véhicule (V) pour qu’il suive cette trajectoire yref(x), caractérisé en ce que dans ladite seconde étape (3040) on utilise dans ledit réseau neuronal, pour chaque couche, une fonction d’activation φ, participant à une fonction définissant l’évolution d’un paramètre contribuant à ladite valeur f(s) représentative de l’angle de braquage en fonction dudit vecteur d’état s, et symétrique et impaire afin de supprimer tout biais de calcul.1. Method for assisting the driving of a vehicle (V) with at least partially automated driving, traveling on a lane (VC) and acquiring by means of sensor (s) data representative of this lane ( VC), said method comprising a first step (10-20) in which a path y re f (x) is determined which said vehicle (V) must follow on said taxiway (VC) as a function of said acquired data and then it is determined a state vector s representative of a current state of said vehicle (V) with respect to this determined trajectory y re f (x), and a second step (30-40) in which a neural network is supplied with at least one layer with said state vector s determined in order to determine a value f (s) representative of a steering angle for said vehicle (V) so that it follows this trajectory y re f (x), characterized in that that in said second step (3040) we use in said network neuronal, for each layer, an activation function φ, participating in a function defining the evolution of a parameter contributing to said value f (s) representative of the steering angle as a function of said state vector s, and symmetrical and odd in order to remove any calculation bias. 2. Procédé selon la revendication 1, caractérisé en ce que dans ladite seconde étape (30-40) chaque fonction d’activation φ est une tangente hyperbolique.2. Method according to claim 1, characterized in that in said second step (30-40) each activation function φ is a hyperbolic tangent. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que dans ladite première étape (10-20) on détermine un vecteur d’état s comprenant au moins une distance séparant de ladite trajectoire yref(x) déterminée un point déterminé sur une prolongation vers l’avant dudit véhicule (V) d’un axe longitudinal médian de ce dernier (V), un angle de braquage en cours dudit véhicule (V) et un angle de cap relatif à la trajectoire dudit véhicule (V).3. Method according to claim 1 or 2, characterized in that in said first step (10-20) a state vector s is determined comprising at least a distance separating from said trajectory y re f (x) determined a determined point on a prolongation towards the front of said vehicle (V) of a median longitudinal axis of the latter (V), a steering angle in progress of said vehicle (V) and a heading angle relative to the trajectory of said vehicle (V) . 4. Procédé selon la revendication 3, caractérisé en ce que dans ladite première étape (10-20) on détermine un vecteur d’état s comprenant cinq distances séparant de ladite trajectoire yref(x) déterminée respectivement cinq points déterminés sur ladite prolongation vers l’avant du véhicule (V) dudit axe longitudinal médian de ce dernier (V), ledit angle de braquage en cours du véhicule (V) et ledit angle de cap relatif à la trajectoire du véhicule (V).4. Method according to claim 3, characterized in that in said first step (10-20) a state vector s is determined comprising five distances separating from said trajectory y re f (x) determined respectively five points determined on said extension towards the front of the vehicle (V) of said median longitudinal axis of the latter (V), said current steering angle of the vehicle (V) and said heading angle relative to the trajectory of the vehicle (V). 5. Procédé selon la revendication 3 ou 4, caractérisé en ce que dans ladite première étape (10-20) on utilise des points dont les positions respectives sur ledit axe longitudinal médian sont prédéfinies respectivement par xn = n*xo, où xo est une constante prédéfinie et n = 1 à N, N étant le nombre total de points utilisés.5. Method according to claim 3 or 4, characterized in that in said first step (10-20) using points whose respective positions on said median longitudinal axis are predefined respectively by x n = n * xo, where xo is a predefined constant and n = 1 to N, N being the total number of points used. 6. Procédé selon la revendication 3 ou 4, caractérisé en ce que dans ladite première étape (10-20) on utilise des points dont les positions respectives sur ledit axe longitudinal médian sont définies respectivement par Xn = n*vx*ôt, où vx est une vitesse longitudinale en cours dudit véhicule (V), ôt est une constante prédéfinie et n = 1 à N, N étant le nombre total de points utilisés.6. Method according to claim 3 or 4, characterized in that in said first step (10-20) using points whose respective positions on said median longitudinal axis are defined respectively by Xn = n * v x * ôt, where v x is a current longitudinal speed of said vehicle (V), ôt is a predefined constant and n = 1 to N, N being the total number of points used. 7. Procédé selon l’une des revendications 1 à 6, caractérisé en ce que dans ladite première étape (10-20) on détermine ladite trajectoire yref(x) de sorte qu’elle soit placée à égale distance entre deux délimitations de ladite voie de circulation (VC).7. Method according to one of claims 1 to 6, characterized in that in said first step (10-20) determining said trajectory y re f (x) so that it is placed at equal distance between two delimitations of said taxiway (VC). 8. Produit programme d’ordinateur comprenant un jeu d’instructions qui, lorsqu’il est exécuté par des moyens de traitement, est propre à mettre en œuvre le procédé d’assistance selon l’une des revendications précédentes pour déterminer une valeur f(s) représentative d’un angle de braquage pour un véhicule (V) à conduite au moins partiellement automatisée.8. Computer program product comprising a set of instructions which, when executed by processing means, is capable of implementing the assistance method according to one of the preceding claims for determining a value f ( s) representative of a steering angle for a vehicle (V) with at least partially automated driving. 9. Dispositif d’assistance (DA) pour un véhicule (V) à conduite au moins partiellement automatisée, circulant sur une voie de circulation (VC) et acquérant au moyen de capteur(s) des données représentatives de cette voie de circulation (VC), ledit dispositif (DA) comprenant un calculateur (CA) déterminant une trajectoire yref(x) que ledit véhicule (V) doit suivre sur ladite voie de circulation (VC) en fonction desdites données acquises puis déterminant un vecteur d’état s représentatif d’un état en cours dudit véhicule (V) par rapport à cette trajectoire yref(x) déterminée, puis alimentant avec ledit vecteur d’état s déterminé un réseau neuronal d’au moins une couche, qu’il comprend, afin de déterminer une valeur f(s)représentative d’un angle de braquage pour ledit véhicule (V) pour qu’il suive cette trajectoire yref(x), caractérisé en ce que ledit calculateur (CA) utilise dans son réseau neuronal, pour chaque couche, une fonction d’activation φ, participant à une fonction définissant l’évolution d’un paramètre contribuant à ladite valeur f(s) représentative de l’angle de braquage en fonction dudit vecteur d’état s, et symétrique et impaire afin de supprimer tout biais de calcul.9. Assistance device (DA) for a vehicle (V) with at least partially automated driving, traveling on a lane (VC) and acquiring by means of sensor (s) data representative of this lane (VC) ), said device (DA) comprising a computer (CA) determining a trajectory y re f (x) that said vehicle (V) must follow on said taxiway (VC) as a function of said acquired data and then determining a state vector s representative of a current state of said vehicle (V) with respect to this determined path y re f (x), then supplying with said state vector s determined a neural network of at least one layer, which it comprises , in order to determine a value f (s) representative of a steering angle for said vehicle (V) so that it follows this trajectory y re f (x), characterized in that said computer (CA) uses in its network neural, for each layer, an activation function φ, gone ciping to a function defining the evolution of a parameter contributing to said value f (s) representative of the steering angle as a function of said state vector s, and symmetrical and odd in order to remove any calculation bias. 55 10. Véhicule (V) à conduite au moins partiellement automatisée, propre à circuler sur une voie de circulation (VC) et acquérant au moyen de capteur(s) des données représentatives de cette voie de circulation (VC), caractérisé en ce qu’il comprend en outre un dispositif d’assistance (DA) selon la revendication 9.10. Vehicle (V) with at least partially automated driving, capable of traveling on a lane of traffic (VC) and acquiring by means of sensor (s) data representative of this lane of traffic (VC), characterized in that it further comprises an assistance device (DA) according to claim 9.
FR1858772A 2018-09-26 2018-09-26 ASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION Expired - Fee Related FR3086491B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1858772A FR3086491B1 (en) 2018-09-26 2018-09-26 ASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1858772 2018-09-26
FR1858772A FR3086491B1 (en) 2018-09-26 2018-09-26 ASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION

Publications (2)

Publication Number Publication Date
FR3086491A1 true FR3086491A1 (en) 2020-03-27
FR3086491B1 FR3086491B1 (en) 2020-09-25

Family

ID=65243872

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1858772A Expired - Fee Related FR3086491B1 (en) 2018-09-26 2018-09-26 ASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION

Country Status (1)

Country Link
FR (1) FR3086491B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180107215A1 (en) * 2016-10-17 2018-04-19 Uber Technologies, Inc. Neural network system for autonomous vehicle control

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180107215A1 (en) * 2016-10-17 2018-04-19 Uber Technologies, Inc. Neural network system for autonomous vehicle control

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANDERS HANSSON: "Steering Angle Prediction by aDeep Neural Network and itsDomain Adaption Ability", 23 May 2018 (2018-05-23), XP002792019, Retrieved from the Internet <URL:http://lup.lub.lu.se/luur/download?func=downloadFile&recordOId=8946239&fileOId=8946252> [retrieved on 20190611] *
DAVID UNGUREAN: "DeepRCar: An Autonomous Car Model", 16 February 2018 (2018-02-16), XP002791966, Retrieved from the Internet <URL:https://dspace.cvut.cz/bitstream/handle/10467/76316/F8-DP-2018-Ungurean-David-thesis.pdf?sequence=-1> [retrieved on 20190611] *

Also Published As

Publication number Publication date
FR3086491B1 (en) 2020-09-25

Similar Documents

Publication Publication Date Title
EP3994042A1 (en) Method for determining an avoidance path of a motor vehicle
FR3048113B1 (en) DEVICE AND METHOD FOR AIDING THE DRIVING OF A MOTOR VEHICLE
FR3120040A1 (en) Method for activating an obstacle avoidance system for a motor vehicle
FR2976244B1 (en) METHOD FOR ASSISTING THE PARKING MANEUVER OF A VEHICLE AND SYSTEM FOR IMPLEMENTING IT
FR3086491A1 (en) ASSISTANCE IN DRIVING A VEHICLE BY DETERMINING THE TURNING ANGLE BY MEANS OF A NEURONAL NETWORK WITHOUT CALCULATION
FR3084867A1 (en) ASSISTANCE METHOD FOR A VEHICLE WITH AUTOMATED DRIVING FOLLOWING A TRAJECTORY, BY REINFORCEMENT LEARNING OF THE CRITICAL ACTOR TYPE THRESHOLD
US20220044033A1 (en) Multiple resolution deep neural networks for vehicle autonomous driving systems
FR3092545A1 (en) ASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE TRAFFIC LANE IN WHICH AN OBJECT IS LOCATED
FR3082163A1 (en) METHOD AND DEVICE FOR ASSISTING THE DRIVING OF A VEHICLE BY DETERMINING THE TURNING ANGLE AS A FUNCTION OF A PREDICTIVE GAIN
FR3087732A1 (en) METHOD AND DEVICE FOR DETERMINING A CHANGE OF TRACK OF A VEHICLE
FR3093311A1 (en) ASSISTANCE IN DRIVING A VEHICLE, BY DETERMINING THE CONTROLLABILITY OF ITS DRIVING
FR3098480A1 (en) DECISION-MAKING PROCESS FOR A VEHICLE, DEPENDING ON ITS ENVIRONMENT
EP4090565B1 (en) Method and device for controlling a vehicle
EP3931741A1 (en) Vehicle driving assistance by reliable determination of objects in deformed images
FR3082044A1 (en) METHOD AND DEVICE FOR DETECTING THE TRACK ON WHICH A VEHICLE IS MOVING, ACCORDING TO THE DETERMINED DETERMINATIONS
WO2016146823A1 (en) Method for estimating geometric parameters representing the shape of a road, system for estimating such parameters and motor vehicle equipped with such a system
WO2017029444A1 (en) Method for determining the level of attention of a driver of a motor vehicle and method for stimulating the attention of a driver of a motor vehicle
FR3092914A1 (en) Method for determining the trajectory of a vehicle comprising four steered wheels
FR3132487A1 (en) Method for detecting a center line of a traffic lane
WO2023161571A1 (en) Method and device for controlling the selection of a target vehicle for an adaptive cruise control system of a vehicle
FR3093369A1 (en) LEARNING OF A NETWORK OF NEURONES BY COMPARISONS OF VALUES PRODUCED BY A DRIVING SIMULATOR OF A VEHICLE OPERATING IN PARALLEL
WO2023222960A1 (en) Method and device for controlling a cruise control system of a vehicle approaching a road signalling element
WO2023105128A1 (en) Method and device for controlling an adaptive cruise control system of a vehicle
FR3100016A1 (en) Method and system for managing a movement of a motor vehicle
WO2021249809A1 (en) Method for calibrating a camera and associated device

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20200327

PLFP Fee payment

Year of fee payment: 3

ST Notification of lapse

Effective date: 20220505