## speed-dreams-devel

 [Speed-dreams-devel] USR-Robot - driving in traffic From: Wolf-Dieter Beelitz - 2013-06-23 11:08:11 Attachments: Message as HTML ```Hello Xavier, hello All Since the last revision of the USR robot (by Andrew) the USR does not drive well in traffic. The issue is visible even if there are only USR driven cars in a race. Issue description: Andrew made the USR drive as close as possible to the inner side of a curve. If there is a slower opponent driving at the inner side, the USR tries to use an offset as small as possible to overtake. But the calculation is based on the situation at straights. If the USR drives in a curve it steers to a target point that is in front of the car, the distance to the target point depends on the speed I assume. This makes the USR drive closer to the inner side of the curve than the offset calculated (based on geometry of straights). This results in permanently damaging the own car and the opponent. Here the calculation of the offset has to take into account the distance to the target point, otherwise the robot is not usable in the game. Cheers Wolf-Dieter ```
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: Xavier Bertaux - 2013-06-23 11:49:17 ```Hi Wolf-Dieter I completely approve with you. Currently I increase the braking distance and I decrease the speed when there is traffic (with avoid brake and avoid speed), but actually it is valid before the turn (braking in a straight line). This maybe also why I've always found qu'USR had trouble found a good way to double an opponent in a race (compared to Simplix). But, now, I am not be able to make big processing code on a robot, I can make small changes and setups (currently I'm all setups in hand, not with genetic) I also think one robot (Simplix) in the game would not be good (two robots - two different code are two ways of seeing things), it is clear that we lack a real developer for that part of it - no offense you Gabor. Cheers Xavier Le 23/06/2013 13:07, Wolf-Dieter Beelitz a écrit : > Hello Xavier, hello All > > > > Since the last revision of the USR robot (by Andrew) the USR does not > drive well in traffic. > > The issue is visible even if there are only USR driven cars in a race. > > > > Issue description: > > Andrew made the USR drive as close as possible to the inner side of a > curve. If there is a slower opponent driving at the inner side, the USR > tries to use an offset as small as possible to overtake. But the > calculation is based on the situation at straights. If the USR drives in > a curve it steers to a target point that is in front of the car, the > distance to the target point depends on the speed I assume. This makes > the USR drive closer to the inner side of the curve than the offset > calculated (based on geometry of straights). > > > > This results in permanently damaging the own car and the opponent. > > > > Here the calculation of the offset has to take into account the distance > to the target point, otherwise the robot is not usable in the game. > > > > Cheers > > > > Wolf-Dieter > ```
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: Wolf-Dieter Beelitz - 2013-06-23 14:38:13 ```Hello Xavier, > (USR) setups (currently I'm all setups in hand, not with genetic) In principal it should be possible to use the genetic parameter optimization for USR as well. The car parameters can be taken from the simplix file, there is no difference. But to completely setup the genetic-template file, you need to know how the parameters of the robots are used. This is where I do not know much about the other robots. Have a look to the car parameter here:
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: Wolf-Dieter Beelitz - 2013-06-25 15:08:23 ```Hello Xavier, just watched the USR at Aalborg. What I see is: The car starts to steer into the curve much too early and drives against the inner barrier again and again. After some research in the USR code I identified the steergain value to be used to scale steering. In line 2061 of USR raceline.cpp the variable k1999steer is calculated using steergain. If I scale steergain down steergain *= 0.06; the car steers close to the inner barrier. It still hits the outer barrier, but this is caused by the acceleration issue out of slow turns, like simplix has it. This steering issue should be the reason for the damaging of opponents driving at the inner side as well. AFAICS the calculation of steergain has to be reworked completely to work correctly at all speed and all tracks. Cheers Wolf-Dieter ```
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: Xavier Bertaux - 2013-06-26 21:52:44 ```Hi Wolf-Dieter, I will try to added a new value to xml for multiply steegain by these value so for each track these value can be changed for test. Cheers Xavier Le 25/06/2013 17:08, Wolf-Dieter Beelitz a écrit : > Hello Xavier, > > just watched the USR at Aalborg. > > What I see is: > > The car starts to steer into the curve much too early and drives against the inner barrier again and again. After some research in the USR code I identified the steergain value to be used to scale steering. > > In line 2061 of USR raceline.cpp the variable k1999steer is calculated using steergain. > If I scale steergain down > > steergain *= 0.06; > > the car steers close to the inner barrier. > > It still hits the outer barrier, but this is caused by the acceleration issue out of slow turns, like simplix has it. > > This steering issue should be the reason for the damaging of opponents driving at the inner side as well. > > AFAICS the calculation of steergain has to be reworked completely to work correctly at all speed and all tracks. > > Cheers > > Wolf-Dieter > > ```
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: Xavier Bertaux - 2013-06-26 21:58:10 ```Hi WD, I just see that it exist a value steergain in xml definition. So I will try to play this Cheers Xavier Le 26/06/2013 23:52, Xavier Bertaux a écrit : > Hi Wolf-Dieter, > > I will try to added a new value to xml for multiply steegain by these > value so for each track these value can be changed for test. > > Cheers > Xavier > > Le 25/06/2013 17:08, Wolf-Dieter Beelitz a écrit : >> Hello Xavier, >> >> just watched the USR at Aalborg. >> >> What I see is: >> >> The car starts to steer into the curve much too early and drives against the inner barrier again and again. After some research in the USR code I identified the steergain value to be used to scale steering. >> >> In line 2061 of USR raceline.cpp the variable k1999steer is calculated using steergain. >> If I scale steergain down >> >> steergain *= 0.06; >> >> the car steers close to the inner barrier. >> >> It still hits the outer barrier, but this is caused by the acceleration issue out of slow turns, like simplix has it. >> >> This steering issue should be the reason for the damaging of opponents driving at the inner side as well. >> >> AFAICS the calculation of steergain has to be reworked completely to work correctly at all speed and all tracks. >> >> Cheers >> >> Wolf-Dieter >> >> > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > Speed-dreams-devel mailing list > Speed-dreams-devel@... > https://lists.sourceforge.net/lists/listinfo/speed-dreams-devel ```
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: Wolf-Dieter Beelitz - 2013-06-27 05:30:04 ```Hello Xavier, the Aalborg issue of the cavallo (not the lynx) is caused by the aalborg.xml file being corrupt. Therefore the values for the distance parameters and the parameter that disables the sides are not used for Aalborg. Theses margins make it drive well, independent from the steergain. The remaining issue with overtaking is related to the distance, that results from the calculation of the target point used for steering. The offset from middle of the road (or from the raceline) has to take into account, that the angle is measured in a straight line from the current position to the target point, while the car has to drive an arc. If the distance to the target point is too large, the car will drive too much to the inner side. This effect is "wanted" while driving without opponents at side. It makes the car anticipate the next curve. But if there is an opponent at side, the offset has to be larger to keep the lapping car away from the lapped car. A shorter distance results in less risk to hit the opponent, but makes the lapper slower. So a good solution would be to modify the calculation of the offset in just the overlapping situation. But here I still do not know how it is done in USR. Cheers Wolf-Dieter ```
 Re: [Speed-dreams-devel] USR-Robot - driving in traffic From: xavier bertaux - 2013-06-27 08:13:09 Attachments: Message as HTML ```Hi Wolf-Dieter, OK, I looked on the sc-lynx-220. Yep for "offroad allowed", I pushed this in local and car not drive in the side on aalborg. For me two problems on USR actually: 1/ as you exposed USR can't manage very well with opponent - I will look if I can modified code for this (but not sure for 2.1) 2/ between Simplix and USR, Simplix has a better acceleration, same in straight and same if pass a turn with a same speed. For your problem exposed I think that this code is on opponent but I must look. I'm not sure that I could resolved this for 2.1 Cheers Xavier ________________________________ De : Wolf-Dieter Beelitz À : Xavier Bertaux Cc : "speed-dreams-devel@..." Envoyé le : Jeudi 27 juin 2013 7h29 Objet : AW: [Speed-dreams-devel] USR-Robot - driving in traffic Hello Xavier, the Aalborg issue of the cavallo (not the lynx) is caused by the aalborg.xml file being corrupt. Therefore the values for the distance parameters and the parameter that disables the sides                         are not used for Aalborg. Theses margins make it drive well, independent from the steergain. The remaining issue with overtaking is related to the distance, that results from the calculation of the target point used for steering. The offset from middle of the road (or from the raceline) has to take into account, that the angle is measured in a straight line from the current position to the target point, while the car has to drive an arc. If the distance to the target point is too large, the car will drive too much to the inner side. This effect is "wanted" while driving without opponents at side. It makes the car anticipate the next curve. But if there is an opponent at side, the offset has to be larger to keep the lapping car away from the lapped car. A shorter distance results in less risk to hit the opponent, but makes the lapper slower. So a good solution would be to modify the calculation of the offset in just the overlapping situation. But here I still do not know how it is done in USR. Cheers Wolf-Dieter```