F1 2011 Official AI Thread

F1 2011 The Game (Codemasters)
Playing on Legend @ monza and the AI just won't overtake you no matter what, they will get a good run on you going into certainturns but will instead decide to just stay behind you for the entire race. It's bizarre. Had similar issues on other tracks, they just won't overtake you unless you make some major error. It kinda ruins the offline portion of this game.
 
I couldn't agree more! I never added any mods to F1 2010, mostly b/c I was worried about the game crashing or other problems it already had getting worse if I did. This year is a totally different story, I'm all about the mods this time around. I don't know the first thing about modding, but if anyone wants to teach me I will gladly start!

modding is usually awesome. gotta remember to back your stuff up though, just to be safe given your level of modding knowledge, I would back up the ENTIRE installation folder before you put anything else in it.

But for the most part when you get a mod you simply copy it or extract it where the readme tells you to, and overwrite the game files that the particular mod changes.

Most of the problems come when you try to put more than 1 mod on, especially if one file is modded and then you try to further modify that file, it can cause unexpected results/crashes

Most of the Mods here are simple texture mods that change the appearance, there are some grip and AI mods though that will not allow you to play online anymore. There should be some other help over in the mods forum though, or maybe on the main page mod forum
 
Thoughts on AI difficulty and aggression?

So after playing this game for a week i made the transition across a few different drivers aids and went from pro to legend difficulty all aids off except racing line in the corners and after doing a few races im not sure how i feel about the AI. At the beginning with my aids on i was easily wrapping up pole and race wins i think after the 5th consecutive one i decided to ramp it up and start turning the difficulty up. After i removed everything i found myself still competetive with the front runners (in a starter car) but what really caught my attention was a race i did in silverstone. It was a wet qualy (extremely difficult to drive no aids in the wet lol) so i only managed 15th in qualy. Thinking this would be a good benchmark and see how efficiently i could move up the field i was kind of dissapointed that i was able to gain almost 12 places into the first corner (Legally no contact) and started moving through the three front runners. Due to mistakes here and there i finshed the race in second behind button but without the mistakes i made (which were fairly numerous) i could've easily caught passed and finished ahead.

Pros from 2010 how do you find the difficulty? Once the cars get on race pace the front guys will put up somewhat of a challenge but they seem to have the slow corner bug that was apparent in f1 2010. With the beginner car im driving and the ample mistakes i make from learning no aids i was totally expecting to languish in the midfield, im just worried as i get more comfortable in the car ill be a good 2-3 seconds a lap faster instead of the .5-1 second i can pull currently on good laps.

Being Sebastian Vettel is fun for a few races but then you notice no one is close enough to pressure you let alone pass you kind of makes me sad.

Definately waiting on the RD realistic AI mod that im sure is in the works =P
 
Hey Miguel,

I'm currently encountering the same problem.

I'm not that F1 2010 pro, but I know, if I start a new career in F1 2010, 7 years, legend AI, i'ts suuper hard to get played better than the 16th place or so. And this was right, because I was driving in a damn slow lotus or so.

But now, F1 2011, set AI to legend, 5 years career, jumping into a Force India, you shouldn't been able to win your first 2 Grand Prix's.
I play with Keyboard, that means I'm not that tip top driver hunting for every millisecond on track and still I could win the first to Grand PRix so easily.

Plus, legend AI on the Coop-Career is as easy as solo career :( this is super disappointing!

So is the AI just bugged or did CM lowered the difficulty on purpose??

edit: Forgot to talk about AI aggression:
On Malaysia, rain, I was 1st and behind me Alonso. I couldn't create a gap between us, but it was much to easy to keep him behind me. I've made quiet some driving mistakes, e.g. taking a long way around a corner, but still, Alonso wasn't able to take over or even start an attack :/
 
What are your Career AI times on Legend/Pro/Amature

I'm playing on Expert mode, Legendary AI, No assists, Full sim, no flashbacks

At the end of Qualifying at Istanbul park (Short weekend) Vettel set the pole with a 1:23.4xx

This seems really fast to me. I managed a 1:25.0 which was good enough for 17th place in the 2nd Force India seat.

my team mate quali'd a few places up in 14th a few hundredths ahead of me.

It was odd though because the gap from 1st to 24th was only 3 seconds. I've never known the AI to be so tightly packed.

In the race I got up to 8th after the first few corners and then watched 7th pull away from me while keeping 9th behind me easily enough. AI is fast, but reluctant to pass.

Next race is Catalunya, I decided to go for a long weekend since I'm a fan of the track. P1: I messed around with settings for a while, but couldn't get comfortable and was setting 1:23's in dead last.

I changed springs to 11/11 and gave it a go, I got a 1:19.4 which put me in first place, .6 seconds infront of Rosberg with a 1:20.0

I noticed looking at my timing board on the monitor in the garage that my theoretical personal best time was 1:19.4 and the the theoretical session best time was also 1:19.4, like I had just set that time and now the game had to readjust it's timing or something.

So obviously I went faster than the game thought I could. but still Rosberg was only .6 off that pace, and the top 10 was all in the 1:20's.

I'd like to give P2 a go, to see what happens there, but my savegame got corrupted at some point. this is like the 4th time it's happened.

So I don't really know what's going on here, I read someone else's post saying their AI on Legendary at Istanbul was getting mid 1:26's
 
While the AI can't seem to navigate around you, it can pass in the pitstops. In 20% games one pitstop still gives the human a massive advantage, but in 50% when you have to do three or four it becomes more about being fast on-track!

That said, I think I may look at installing the AI agression mod. I tend to find mods are a little too far the other way for me... as in by correcting the agression you actually make the AI a bit too agressive and crash you out a lot! Given it seems to be a database mod rather than an .xml mod (not really sure how this works) I think I might have to look up some guides...
 
almost identical story to John Robertson - Istanbul one of my favourite tracks and struggle to keep the pace of the top ten, come spain and fastest lap and pole easily!
legendary ai. force india etc....
very strange!
 
@ ethone - thanks for your tip on Virtual_Performance. It is great for minor changes of driver speeds but of little use for equalising the real versus simulated AI times - I have also edited the Virtual_Performance numbers for the drivers but the spread 0-1 is not sufficient to equalise the gap between "real" AI times versus simulated/accelerated times.

The accelerated AI times are between 1 and 2 seconds per lap slower than AI "real" times. I have been through many of the other files and folders in circuits and also through the Database.bin but I can not work out how to increase the AI times by 1-2 seconds - has anyone any idea. I think if we could balance this problem out it would be a big step forward in gameplay. Qualifying high up the grid is too easy unless we can speed the AI times up in accelerated mode.
 
Yup, as I wrote earlier the driver's virtual_performance variable only makes for 0.7 to 1s of difference going from 0 to 1.

There are some higher-level variables that affect the no-see/acc-mode performance as well.
ai_tier_characteristics has equivalents to the drivers variables for each tier level (think of them as multipliers), among them one for virtual_performance. Be sure to set it to 1.00 for Tier 1 as well to have the top drivers be at their quickest in acc-mode. For the lower tiers I have them at 0.9, 0.8, 0.75 and 0.6 currently but that's still very much WIP.
 
So which tracks does the AI suck at? At the moment I'd rank them as follows based on my first two seasons at Force India:

Completely awful (easy win):
Valencia (Europe)
Singapore
South Korea
UAE (Abu Dhabi)

Pretty darn bad (easy podium):
Malaysia
Monaco
Hungary

Not very good (easy top 5):
Monza
Spain
China
Brazil
India

Ok I guess (easy points finish):
Canada
UK
Germany
Japan

Actually pretty good (tricky points finish):
Begium
Australia
Turkey


Of course some of this may be tracks that I'm good/not good at. I don't use any changes to springs/ride height, so car handling isn't completely crazy. What are other peoples thoughts? Any you strongly disagree with? Might see if I can write an AI mod to slightly balance this....
 
So which tracks does the AI suck at? At the moment I'd rank them as follows based on my first two seasons at Force India:

Completely awful (easy win):
Valencia
Singapore
South Korea
UAE

Pretty darn bad (easy podium):
Malaysia
Monaco
Hungary

Not very good (easy top 5):
Monza
Spain
China
Brazil
India

Ok I guess (easy points finish):
Canada
UK
Germany
Japan

Actually pretty good (tricky points finish):
Spa
Australia
Turkey


Of course some of this may be tracks that I'm good/not good at. I don't use any changes to springs/ride height, so car handling isn't completely crazy. What are other peoples thoughts? Any you strongly disagree with? Might see if I can write an AI mod to slightly balance this....
yes, I hope that a man fix it :frown:
 
What you have to understand that AI is programmed and not simulated. This is the reason that AI is different track to track. In the GP series AI was simulated and the same rules applied to both you and the AI.

For simulation the AI has to look ahead (aka probe) and see if a turn comes. Then it should make calculations depending on the car's status (wings, tires, fuel, etc, aka GRIP) and the characteristics of the turn (actually, this is what real pilots do). The result of the calculation is the breaking point. So, a real AI can always make a perfect lap. There should be no slow turns and other issues. And even if a turn is slower or faster than the real thing it doesn't mean much because it would also apply to the player (and of course such thing can be easily fixed in a patch).

To make mistakes the AI should calculate with some randomness. The randomness of Vettel and other good pilots should be minimum while more for other pilots. So, in short, the performance of the AI cars should only depend on GRIP, HP (horse power) and the randomness value. AFAIK, this is how the GP series worked. There shouldn't be magic values in xml files. You want faster AI? Give them more grip and/or hp. You want to simulate qualifying? Do the same, add a little bit more grip and hp (I know something similar can be also done in F1 2010/2011, but IIRC it broke the AI, if it was a real simulation this would not brake anything).

Disclaimer: I am a professional programmer.
 
For simulation the AI has to look ahead (aka probe) and see if a turn comes. Then it should make calculations depending on the car's status (wings, tires, fuel, etc, aka GRIP) and the characteristics of the turn (actually, this is what real pilots do). The result of the calculation is the breaking point. So, a real AI can always make a perfect lap.

...

So, in short, the performance of the AI cars should only depend on GRIP, HP (horse power) and the randomness value.
Strong disagree.

1) You're forgetting all other cars. Getting the near perfect inputs given a set of car and track conditions is a solvable problem (hard, but solvable... as long as you're not going for perfect). As soon as you add some objects in the way things become evil.

2) Solving this problem for the current state of the car in real time isn't going to happen. You cannot take each corner in isolation. Some corners it's very important to get a good exit, some a good entrance, and some a good speed throughout. With changing conditions all this stuff can't be precalculated to be perfect, and there's no chance you're doing it in real time. No chance at all. With a simple constant grip/hp it's a lot easier.... with everything changing second by second? No chance.

3) Different drivers have different styles in real life. Hamilton is random, but fast. Button is less random, but slower. Schumi will try to kill you. Filipe will be slower than you. "Randomness" is not enough to overcome this.

Disclaimer: I am a professional programmer.
Disclaimer: So am I.
 
Oh, come on. You tell me that today multi core cpus cannot calculate the grip value of 24 cars (that's 96 wheels).
There are far more calculate intesive applications out there. Anyway, this GRIP calculation is just basically addition and subtraction. Also, all values are basically static data and with these values you calculate dynamic behavior. Example, you simulate tyre wear by descreasing the grip by some amount and fuel consumption by increasing the grip and the hp by some other amounts.

Actually, I have to admit that I do not know how to program overtake, spin and such, but in my post I focused on how the AI should manage a lap without doing critical mistakes. If you have such a base you can add features like sliding, spinning, overtaking and such.

If you really believe such things cannot be done with today cpus then you should take some classes about high performance data processing. It is not as if the simulation has to calculate the pressure of the air particles causing downforce.
 
driver1973 - I suck at games but I can program. It is clear from evidence produced on this forum that there is complex mathematical models used for the Player cars and also the AI cars that are in your line of vision in front and behind. It is also blatantly obvious that less complicated simulations of lap times are used to calculate other cars times during races, practice and qualifying for the activities of cars that do not appear in your screen. And whilst purists might see this as a cheat I actually think it is fair enough they do this so long as the results are acceptable. Why waste extensive programming time on a complex model that is unnecessary whensomething simple can do the trick (sorry that is a programmers perspective on this).

If you are on track during qualifying sessions other cars times are between 1 and 2 seconds per lap faster than when they are out of sight and you either accelerate time or are not on track. Clearly when you are on track CM apply all the complex data variables and constants. But, when you are accelerating time or not on track or not in sight of the cars ahead/behind they use something very much less complex to determine lap times and these lap time values that are determined from numbers that are either hard coded (which might explain why the mod community here are struggling to fix this problem) or are somewhere in the database.bin or elsewhere in other xml files.

There is talk of the qual times being impacted in the Tierxxxxxx files. This causes modders a problem because that will rely on leaving Vettel and Co with the maximum value of 1 and increasing the rest. Which may well make the 2nd tier and below cars competitive but the top guys will still be too slow leaving qualifying too easy to get pole positions (as is the case at the moment).

One other solution that the modders might be looking at is to slow the non-simulated times down. So when you are on track the modders may slow those times down to match the simplified quali times because it is easier to do that. The problem is too many people are complaining that the top Legend setting is too slow and, if anything, they want the AI to be a couple of seconds a lap quicker on that level.

If that doesn't produce the right results and lap times, the only option will be to slow Player cars down by 1 or 2 seconds.

I have asked the modders here several times about this and nobody has sussed out a fix. Or, hopefully, they have and are keeping quiet and are keeping us all in suspense and about to release a mammoth AI update that fixes the AI simulated lap time speeds in qualifying. WIth any luck they will suss out how to prevent the AI slowing up and not overtaking the player car when clearly they should and can. AI aggression changes does not fix this, so, again this may be hard coded and we are doomed on a fix here too. I looked at the database bin and some of the track xml files and saw ai behaviour values with things like hold back distances and stopping distances perhaps these can be changed but I think these are to keep cars a full car length behind the car's current track location and if these are changed it will screw up the car ghosting maths.

Fingers crossed there will be fixes out there, but things are very quiet on the Codemasters forum and here on this subject matter and it might be there is no fix because what needs changed is hard coded. MAYBE A PC PATCH WILL FIX THESE ISSUES.
 
daytona64:

It may be true that they use complex mathematical models. Then tell me how Geoff pulled it off in 1994?
I do not care about complex models. I want a somewhat real AI which does not suck. I do not care even if the AI cheats until
it produces a reasonable challenge and believable real lap times.

Clearly, CM is not up to the challenge. My approach would make the simulation simple. Basically, if the car has grip
you do not have to calculate vectors, forces and such as these would not matter. You only have to calculate these if
the car does not have grip and it begins sliding. In my mind this is a completely separate problem and should apply only
to the player's car not to the AI cars (I do not really care how realistic the 'mistakes' of the AI, because most probably I
am not there to see it). However, I do not see why this is an issue as only 1 or 2 cars have to be simulated at once
in greater precision as the AI does not have to generate 'mistakes' to the rest of the cars at once.

So, in short, the normal simulation mode for the AI cars would be quite simple. The cpu would continually calculate grip for all the cars depending on a few parameters of the given car and where it is on the track. Also, as I wrote, the AI should look ahead and see if there is a turn approaching. As the AI knows everything about the car and the track it can easily calculate
where the car has to break and where it can accelerate. If the AI decides it is time to make a 'mistake' it can switch to the greater precision model for that car. Of course, the player's car can always be in the greater precision mode.
 
Oh, come on. You tell me that today multi core cpus cannot calculate the grip value of 24 cars (that's 96 wheels).
Your basic premise is wrong. Grip isn't a constant. Your grip at point A in the corner will not be the same as your grip at point B. Depends on three accelerations, three displacements, three angular accererations, the steering angle, the car's vertical displacement, each wheel's angular velocity, whether each wheel is undergoing static or dynamic friction... and finally the topology of the track. Might even be a few I've forgotten about.

So that's 23 variables to take into account (assuming 2D track and I don't fail at conting) at each point along your projected curve. Now run the full physics simulation on that varying your steering angle, throttle, brake, DRS, KERS, and gear shifts. Oh, and why not fuel mix while we're about it!

Computing the best line from a SINGLE initial condition with all those variables is going to take eons. Will the corner be taken better if I apply the throttle at 3.1415% for one simulation tick roughly a quarter of the way through the corner? I don't know - you tell me. You're the one who thinks it's easy to find a perfect line...

That said It is possible to generate good lines computationally. Seed any reasonable optimisation algorithm with a basic "brake here, go round corner" and say "make this better" and it will find better breaking points and better inputs for all the above controls than the one you started with. Perfect though? That's a big word. Heck, even a good optimisation algorithm like this would struggle a bit to run in real time with 24 cars on top of a full game and produce significantly better results than that which you started with.

BTW - Turns out I do do high performance data processing for a living.
 
> Your basic premise is wrong. Grip isn't a constant.

Where did I say the grip is constant? I said the grip can be calculated using constant values.
For eg: the grip of the track at a certain point is constant. These values can change over time (the track becomes wet
for example) but for calculating the actual grip at the moment these values can be regarded as constant.

> So that's 23 variables to take into account

Yeah, and what? These variables do not depend on each other. The grip of the track at a certain point does
not depend on the fuel amount or the tire wear. Neither is depend on the steering angle. These are parameters that modify the calculated grip but does not depend on each other.

> Computing the best line from a SINGLE initial condition with all those variables is going to take eons.

Why do you want to calculate that? The best line is clearly constant. It can be pre-calculated. The AI just has to follow the pre-calculated line. Using this it is trivial to calculate breaking and accelerating points.

>Will the corner be taken better if I apply the throttle at 3.1415% for one simulation tick roughly a quarter of the way through >the corner?

I talk about simulating AI cars not simulating the player's car. Of course, the AI should know if it is better to apply the throttle or not.
 
Guys, these complex data calculations may well apply to the player cars but there is no evidence of Codemasters trying to replicate on lap activity of the AI in this way. I suspect if you take a look at the laptimes files for each track (eg in Australia open up Codemasters\F1 2011\tracks\circuits\melbourne\route_0\laptimes.xml) it becomes obvious the AI are actually on a virtual rail system with 20 pre-determined points on the track , it appears the cars have been synched against the Ferrari car (Fer) and each sector oint has a time in secs for perfect grip level, level 2 grip etc. I think there is nothing wrong with this model it is real simple and probably used for the entire AI core lap time structure. I think you are both giving CM too much credit for detailing how the AI may apply throttle etc. Mistakes look like they are induced against a multiplier set against a standard index. Again, nothing wrong with this but as they use a more complex system for calculating for mapping AI car track location and lap time performance when the car is running close to the player cars I suspect this is causing the discrepancies between real and sim lap times.

TG - great work on splitting the tracks up into 5. I agree with your ratings here too and I am a rubbish driver. I suspect if modders could speed up the AI by about 3 seconds for Group 1, 2 seconds for group 2, 1 second for group 3, same for group 4 and -1 second (slower) for group 5 it will perfectly balance the difficulty of the game and align track difficulty for most players. NICE WORK.
 
Where did I say the grip is constant? I said the grip can be calculated using constant values.
For eg: the grip of the track at a certain point is constant. These values can change over time (the track becomes wet
for example) but for calculating the actual grip at the moment these values can be regarded as constant.
If something is calculated using constant values it itself must surely be constant, right? Can't see any way out of that.

Yeah, and what? These variables do not depend on each other. The grip of the track at a certain point does
not depend on the fuel amount or the tire wear. Neither is depend on the steering angle. These are parameters that modify the calculated grip but does not depend on each other.
Lets say the physics engine runs at 30 ticks/second, and a corner takes 3 seconds to naviage. 90 ticks. For the first 20 ticks I brake, then I turn for the next 70. The braking takes me from V0 to V20. When we turn in our grip is dependant on V20. The grip at tick x is going to dependant on Vx throughout the turn.

Problem: Without simming it I cannot tell you what my velocity, which impacts on my grip, will be at tick 20, nor can I say what it'll be a tick x. It's all dependant on the state at tick 0. Do I know if this is a good line or not? No idea, would have to calcualte based on the initial state. Lets say we do this and it's not. Maybe we'll try something different and brake for 21 ticks before turning. We have exactly the same problem. Don't know if this is faster withing simming. When you look at all the combinations of inputs, especially as many are analogue, suddenly we're getting into "would take longer than the life of the universe" amounts of processing. The amount of combinations of "brake on ticks [a, ..., n], turn on tick [b, ..., m]" that there are is mindboggling enough.

Furthermore this is for one single starting state, a state which might not be the best state to start from. Maybe the perfect line requires me to be 1m to the left. Maybe 40cm. Maybe 19.99909998cm. Perahps I should be going a little faster. Maybe I should have started the braking a couple of simulations ticks ago?

Now if the cars were nice and simple. No aero, no fancy springs, constrained to a 2D plane of the track with a grip that doesn't vary at all around the corner we'd perhaps have a chance at finding the best line, especially for simple single corners. As it is, with the grip at every simulation tick dependant on all the previous ticks? No chance.

The best line is clearly constant. It can be pre-calculated. The AI just has to follow the pre-calculated line. Using this it is trivial to calculate breaking and accelerating points.
Incorrect. Cold tyres, worn tyres, options/primes, amount of water on the track, track temperature, fuel quantity, damage, horsepower, brake wear, whether KERS/DRS are available, fuel mix... these things can only be known as the car is actually going around the track. Even if these we all known see above for why it can't simply be calculated.
 

Latest News

How long have you been simracing

  • < 1 year

    Votes: 304 15.3%
  • < 2 years

    Votes: 212 10.7%
  • < 3 years

    Votes: 203 10.2%
  • < 4 years

    Votes: 154 7.8%
  • < 5 years

    Votes: 270 13.6%
  • < 10 years

    Votes: 232 11.7%
  • < 15 years

    Votes: 148 7.5%
  • < 20 years

    Votes: 117 5.9%
  • < 25 years

    Votes: 89 4.5%
  • Ok, I am a dinosaur

    Votes: 255 12.9%
Back
Top