"Small change attempting to reduce AI tendency to stay behind a slower car."

Discussion in 'Technical Archives' started by MarcG, Mar 19, 2014.

  1. MarcG

    MarcG Registered

    Joined:
    Oct 4, 2010
    Messages:
    6,854
    Likes Received:
    2,234
    Ok I know this is'nt as a major important issue as other Multiplayer issues come first but thought it worth posting here anyway.

    Test #1:
    Default Meganes
    Silverstone International
    No WIS files or INI (autocalibrate="1")
    Using the Players car controlled by AI (which is slower than other AI) from the front of the grid the AI behind still get "stuck" behind the Players car, dabbing of the brakes noticeable, plenty of time to come out of the slipstream and attempt an overtake but they simply eithe a) dont and stay behind or b) divebomb into the corner

    Test #2:
    Meganes with my own Talent files
    Silverstone International
    WIS and INI (autocalibrate="1") files used (both pre-created in Build494 if that matters, no time for fresh ones)
    Again using the players car as AI and also knowing that one AI had a Speed of 0 in his Talent file (plonked both on the front row), the following AI still have a tendency to sit behind and dab the brakes without pulling out of the slipstream. Like above there is divebombing but I see this in older Builds so not sure if it's happening more or less or the same.

    Both tests yeilded similar results.

    Conclusion:
    Sure it does'nt happen every lap as there is overtaking going on off the long (Hanger?) straight (as well as other areas of course), but the following AI are still glued to the rear of the slower AI far too much, one AI was stuck behind for 5 laps dabbing his brakes 4-5 times on the straight before finally making a move. Yes if both cars were similar in Speeds then you could argue he's biding his time, but the Speed & Aggression difference was 50 between the two AI and the follower had ample oppertunities to pull out and overtake.
    There is dive bombing by the AI on the slower car at the end of the straight at times, again they dab the brakes all the way down and then at the last second dive out and overtake but as above I see this in 494 already.

    Not totally convinced much has changed from the previous stable Build (not tried the other Unstables since 494), granted just one type of car at one track used in the test but it is ISI content and if working as expected then I'd expect to see the difference immeditaley but that is not the case I'm afraid.
    IMO it still needs work.
     
  2. 88mphTim

    88mphTim racesimcentral.net

    Joined:
    Sep 23, 2010
    Messages:
    10,840
    Likes Received:
    314
    Thanks, Marc.

    Make sure you are running with aggression at the yellow line in race settings?
     
  3. MarcG

    MarcG Registered

    Joined:
    Oct 4, 2010
    Messages:
    6,854
    Likes Received:
    2,234
    There is no Yellow Line for the ISI Meganes or my Talent edited Meganes (I know what you mean I've seen it in other series before), not sure that would do anything for my Talent meganes anyway as all their Aggression values are different for each driver.
     
  4. 88mphTim

    88mphTim racesimcentral.net

    Joined:
    Sep 23, 2010
    Messages:
    10,840
    Likes Received:
    314
    Ah yeah, it might need updating. I had similar opinions to you testing the karts until I upped the aggression to the yellow line.
     
  5. MarcG

    MarcG Registered

    Joined:
    Oct 4, 2010
    Messages:
    6,854
    Likes Received:
    2,234
    ok the Yellow Line only shows up when using an RFMOD not when individually selecting cars using All Cars All Tracks, so I installed the 1960s World Class Racing mod and chose Brianza with the Yellow Line on 30%.
    Same thing, AI stick behind the slower car in front (at times, again not all the time!) dabbing the brake and not pulling out of the slipstream, again I'm not convinced that it's working as it should/if at all.


    Default PLR, sorry forgot to mention that earlier
     
  6. 88mphTim

    88mphTim racesimcentral.net

    Joined:
    Sep 23, 2010
    Messages:
    10,840
    Likes Received:
    314
    Thanks, Marc.

    One thing that actually is in, is a reduction of the AI to try to pass off the racing surface, to pay more attention to the limits. IMHO that might be making them more timid on the early laps when trying to maintain position infront and behind... I'll pass feedback on, thanks.
     
  7. MikeZ

    MikeZ Registered

    Joined:
    Oct 11, 2010
    Messages:
    94
    Likes Received:
    1
    Hey Marc, I want to say thank you for the time and effort in testing and the feedback here. I appreciate it.

    This wasn't a big change by any means (after all the release notes did say, "small change"). There were no new algorithms or logic changes, this was a bug fix. While debugging I looked for a car that should have been more aggressive following a slower car then stepped through the code tracking the problem to a variable that (by growing larger than I intended) was often disrupting the relative velocity computations between them. I capped it & watched a dozen or so races and this behavior seemed to improve.

    Somethings to keep in mind: 1) The rcd "Speed" values are not constant throughout the race (though they change slower the closer to 0.0 your playerfile "AI Limiter" value is)....they fluctuate slightly throughout the race. 2) Also, upon RCD load (which happens between every session) the speed values have a small pseudo normal variation added. 3) The AI are extra careful behind the player's car. They try *really* hard not to ram the player in the back. As a consequence of that code, it is possible to keep the AI confused and behind you if you if you are actively working to mess with the AI instead of racing.

    In the standard retail build you're not privy to this second by second speed information, but in Mod Mode, you can see the current "Speed" value for the displayed AI car while in the AIW editor on the 3rd line up from the bottom (the line that reads, "track xx.xx obst xx.xx per x.xx", per = percentage of what the AI physics considers optimal speed. *) That is the value I use to determine when I think cars should attempt a pass or not. (The AI don't use this value though....they determine when to pass based only on what they perceive....having to brake before they want to...counting up the moments they think they are losing staying behind this guy...)

    One more thing. The RCD aggression values are not as significant as the playerfile aggression value. What I mean by that is, those rcd values (1-100%)are mapped into a %20 range whose start slides from 0 to 80% based on that playerfile slider. So an AI driver with %100 aggression while the Playerfile aggression is %0 is about as "aggressive" as an AI driver with %0 aggression when the playerfile aggression is set to 21%. These numbers aren't exact, but you get the idea.

    I did my tests between 25% and 50% playerfile aggression.



    * FYI "track" shows how much more meters per second the car could go to be limited by the track, "obst" means the same but limited by his relationships with other cars. When ever one of those values is negative, you know what the AI is slowing down in response to.
     
  8. MarcG

    MarcG Registered

    Joined:
    Oct 4, 2010
    Messages:
    6,854
    Likes Received:
    2,234
    Hi Mike many thanks for the reply, at work on the mobile phone so can't fully reply and test now.
    Anyway thanks for the explanation, as above my tests were AI vs AI I've yet to race them myself yet. The aggression/rcd explanation is brilliant and explains it a lot, I may experiment with larger differences in Speed values to try and get more variation and to help AI vs AI on long straights plus take into account the aggression.

    If you don't mind I'd like to add your post to the Definitive AI thread as I think it's valuable information, many thanks again and as ever...it's my pleasure to test the AI!
     

Share This Page