The online racing simulator
Searching in All forums
(850 results)
AI Strategy
blackbird04217
S3 licensed
I searched and found one thread back when the AI didn't pit at all, but it doesn't help me.

I am currently running the AI on an endurance race, XRT vs FXO at Aston Cadet for 5hrs. I want to up the time on that to like 10 or 12 - but I do NOT want the AI to fail. Currently there has been just under 2 hours of the race, so I only have 3 hours to get this question figured out.

I know the AI calculates their number of stints, and fuel loads at the start, if I do '/hour 10' they don't seem to recalculate. My question is; will they pit properly and continue racing or will they run out of fuel if I turned the race to a longer race.

-Also do the AI pit for tires if needed?

Interesting side not: XRT pit strategy was 67% onboard fuel and 3 stints where the FXO strategy was 100% fuel 2 stints.


-----------------

Side note, XRTs just made their first pitstop while writing this message- I almost missed the excitement! They got four tires and 67% fuel. 2 XRTs DNF while pitting though, both stuck against the pit garage with burned out clutches.
blackbird04217
S3 licensed
I'm sad that the realms of information provided there is gone, but I can't say I am surprised as most topics that I was interested in had newest post in 2005. Hardly any real activity there from my experiences, though it was a convenient spot and the information it had will be missed, though I can't say much about the community there because as far as I am concerned its always been too inactive.
blackbird04217
S3 licensed
The developers don't care about more money, nor do they care about their development speed. They are doing their own thing at their own speed. I've offered my skills and help, and I am sure other people have as well, but the devs set out to do their thing and they get billions of props from me and some around the community here, however there are always people who want more, and want more faster.

More and faster only lead to half done content / patches; and that is one thing the LFS developers have been great to defend against.
blackbird04217
S3 licensed
Quote from Gutholz :I only read the first page and then randomly some of the following postings so this might have been said before.
Imo the whole idea of recreating line-of-sight-vectors to reference points is a waste of effort and time. It might be interessting from a math point of view but does help very little with making a realistic/good ai.

Well you are, like everyone else, entitled to your own opinions. But remember I wasn't trying for 'good' AI, or AI that drives in realistic manners. Just that they use information in a far different way than they have in previous attempts. I don't know if you read my post previous to yours where I have put the project on hold for the time, but currently that is the situation as I need to focus on finding a job.

Quote : For example a human driver can just have a look and see he is 2 meters from the right side of the track. The ai should just be able to get all informations about position, speed etc by calling some functions, the geometric way just makes things alot more complicated but adds nothing new.

Well, again in my opinion it *could* add a lot of new things as I am solving a problem in a different way, decoupling the AI from the physics system as much as possible and originally I was attempting to not give the AI known information, though a few posts up you can see that my idea is starting to conflict a bit.

Either way, it adds new knowledge to me showing me why this would or would not work, show the benefits of such a system as well as what it lacks, and again it is a new algorithm. Whether or not it is better, faster, more realistic - all of that can't be known unless I go through with the idea and test it out. It is very likely that one disadvantage to this system is the cost of the algorithm, the AI constantly checking it's reference points. Though it might not be too much cost if done correctly.

About RARS and TORQS I've heard and seen them but not used either.

--------

I do propose a question though, if you understood all of the above and can see that it is for the attempt of a _new_ way to try things vs doing the same old proven routine.

If using reference points, and the line-of-sight somehow magically make the AI have a better understanding of driving would that be worth the effort and time of this test? (Basically if after creating this algorithm the AI drove like they do using the existing and in my opinion cheating/wrong AI algorithms)

As I stated in the paper I wrote, the AI routines that are common for racing games is great; for games. But when accuracy is required I think th AI need to behave more appropriately as well.
blackbird04217
S3 licensed
@apo3d: There is no need to send the replay, I understand that your situation was the car in front disappearing; I am just explaining don't think it is the 'color' that would help as much as you're hoping as it is still a huge change on the screen and that can lead to the "GO" trigger. I am not saying that in your case it wasn't the color, but simply explaining the problem is bigger than the color.
blackbird04217
S3 licensed
This is the third thread that *I* have seen where you are saying you are too poor to buy the game. Then deal with it! Sorry for the harshness here, but I am sick of reading about your financial statement where I am in a "poor" friggen position myself, but you won't see me complain because I have food, and a roof. Not to mention lights, electricity, a computer and the internet to respond to this.

Here's a solution: Cancel your internet for 3 months, buy S2 then reenable the internet. Just shush it already- PLEASE.
blackbird04217
S3 licensed
Sounds like a very interesting, and new idea. I might even be willing to add some help on behalf of SRS. Though I don't know anything about the courses or anything. I don't have any internet connection available to me where I could actually race or participate on online things though Unfortunately the ping of this connection is far to crappy!

Anyways, I like the idea and wouldn't mind learning along the way, even if I will never use the skills!
blackbird04217
S3 licensed
A blinking car would distract you exactly as the "green" text. It has nothing to do with the color green really but that your waiting for a "go" signal and sometimes that signal is any thing that changes.

In the Head-to-Head league we have had several people get eliminated because of other uses disconnecting at the wrong moment, or even when someone connects at the wrong moment - the change on the screen is caught by your eyes and your trying to react fast so you don't care what changed you go... only fractions of a second later do you realize what you've done but by then it is too late.

------

A blinking car, yellow text or anything of the sort wouldn't really fix it because it is still a visual change. Perhaps the car stays where it is but the collision disappears or something? I don't think that option is that great either but there is only so much that can be done.
blackbird04217
S3 licensed
VT-1 - That was quite an interesting video; although the AI of that car uses GPS to know position rather then using the cones as reference points. From what I gathered in the video. So basically that would be like attaching an AI technique that most games use, to a real car - just compute the best line, then follow it. If all the cones were removed a human driver could not drive the same course again, but that AI could nail it perfectly.

I've decided to put the project on hold for my own lack of interest in continuing right now. I got a LOT of useful information from this thread, and will likely continue the project sometime. Who knows, next week I might come back with some sort of update :P But for the time being I don't have the interest because other things are being more interesting to me, and I still need to find a j-o-b. Getting quite stressed because of the lack of a job.
blackbird04217
S3 licensed
I've noticed that the right turn doesn't work on the gauges, in either "Turn Right" mode or the "Hazard / 4 ways" mode. However the blinkers on the cars are working for me - just not the interface/gauges display.
blackbird04217
S3 licensed
No I typod on the age : /. 35
blackbird04217
S3 licensed
Here is a good question for you then: "Why do you need good grades?"

A few of the outcomes I could think of:
- Because you are aiming for X job and that requires good academics.
- Because you have plans to learn/study more on a subject, requiring good understanding of the basics.

Both of those mean you have some underlying bigger picture, otherwise you could do: Any old job that pays the bills and "survive" because that is all anyone 'needs'. Materialistic objects are not needed, though are desired and sometimes important to each of us.

---

As far as the last years thing. I don't know how realistic of a goal that is for anyone to make. Sure its likely something that is desired, and wanted to some extreme levels - but its the same idea as me say I want to win the lottery in 2010. It's not a very realistic goal. I don't know how to describe it more than its not something that you can actually achieve just by "trying hard". And that is what makes it a non-realistic goal in my mind.

EDIT: My own goal above: Find a job in the Game Industry. is actually not fully in my hands, as it depends greatly on the job openings in the industry, and the fact that someone wants my expertise. I can only give so much effort to this and still have a possibility of failing for reasons out of my control.

(The winning the lottery is actually a poor example, because if you take that goal to the extremes you would simply buy all the tickets and thus win. Though you probably lost more money than gained from the lottery.)
Last edited by blackbird04217, . Reason : Added my own unrealistic goal.
blackbird04217
S3 licensed
Quote from hazaky :Most plans fail. Like when ur tryng to have ur first kiss with a girl, u cant plan it - it comes by itself.

You wrote while I was writing. There are certain things you can't plan for - like your example. But a good plan is a flexible plan, so unseen events or challenges will occur, but the plan should be able to change. Everything will have its share of unseen challenges and risks. When confronted with those challenges do you climb on over the hurdle, or turn around and say- "that plan failed".
blackbird04217
S3 licensed
I'd agree that it is stupid when the goals/plans fall under these categories:

Randomly picked - with no true meaning for you.
No reward for completing the goal, no satisfaction.
Something that is out of reach, unrealistic. These can actually have negative impact.

---

For my I am a, and becoming more and more of a, goal oriented person. It's important to know what you want to achieve, and break it into smaller steps. The paying off my small loan is something I have to do to stay out of debt, so its not a goal - but finishing it off in 2010 vs minimum payments will allow me to achieve future goals of building my own race car / owning a Dodge Viper by the age of 35, (July 2020). So breaking it down into reasonable chunks get me there.

I do say I am becoming more and more goal orientated because; 1 year ago I started planning for my adventure. I didn't have any money saved for it, and was actually just a bit better off financially then I am right now since in 2008 I bought my motorcycle and stuff. But in 4 months, with hard work I managed to do something that "I would never get a chance to do". This all depends on a persons mindset though, and not everyone can work well with goals. But I have discovered that it works great for me, but it is important to keep them realistic and purposeful/meaningful.

When 90% of people choose: "Lose weight" "Get a life" "Quit Smoking" most, but not all, just say these things without purpose. My mom states she will quit smoking every year, yet I've not witnessed a single attempt towards it. When goals/plans are made 'for the hell of it' with no plan to actually follow through, then I agree with you - those goals are pointless.
Last edited by blackbird04217, . Reason : Fixed age typo
2010 Plans
blackbird04217
S3 licensed
I didn't see a thread about this yet;

What are your plans / goals for 2010. As you probably know, I completed a major life goal in 2009, and as a goal oriented person have set out to accomplish several small goals for 2010.

Here are a handful of small goals I have:

Financial:
Get back into the Game Industry.
Finish paying off the small student loan: $11k
Get my backup savings restored . . . (Depleted now due to my trip, and lack of job)

Personal:
Read at least 24 books. Including at least 6 fiction, 6 non-fiction.
Write a 1 page story at least once a week. (52 pieces of writing)
These help go to an old, almost forgotten goal of writing my own book(s).


I know I have a few other categories and goal but they seemed to run away for the moment. So what are your goals/plans for 2010.

-I will try to remember to bump this thread at the end of 2010 and we can all discuss which of our goals were actually completed successfully or the reasons why they weren't.
Last edited by blackbird04217, .
blackbird04217
S3 licensed
Had some for a few weeks now. About 16" total ... or so at the moment.
blackbird04217
S3 licensed
LFS Replay Analyser is one tool to use the RAF files with.

But personally I like F1PerfView a little bit better - though I do use them both as they both have individually neat features that I've found.
blackbird04217
S3 licensed
Well it would be the same race to race, my line on a track that I have enough experience/practice with is the pretty close to the same from race to race. Its the small differences that add up per lap. "I went slightly wide here because of some reason- boiling down to: I missed a reference point by just a little bit (too early or too late).

I'm not ignoring your ideas, but it is important that I hear from some of the others that have been a pretty large portion of this thread on the above discussion. I am trying to find out if adding these "DriveTo" points goes against my original goals in a way that it should not be followed. It is hard for me to decide either way, so I want other opinions of those who have been following...
blackbird04217
S3 licensed
Okay, I am back and going to *try* explaining a question in the correct form so that it is understood. I find that the wording is likely to be taken the wrong way, since some people never figured out my actual intention with the project, really it's likely I have been unclear - and also likely that the intention slightly changes... But besides that.

As a reminder the main intention was to try doing AI in a different way, removing some of the "cheats" that are okay for game AI but not really okay for simulation AI, and in doing so I figured to try using only the information a human gets.

With that in mind, and the difficult task of using these reference points as instructions / memories I have been putting some thought into how to achieve this. So I started driving some more laps in LFS, just for fun really. And I realized something pretty important - but I also have the feeling it goes against the original intent of this project.

As I was driving around Westhill Rev, I noticed that the perception of the left and right of the track is just as important as the reference points. This is not a new discovery as I pointed this out somewhere on page 1. The left/right are important when it comes to forming the 'best line' through a corner or around the track. Then I began wondering if it would be possible to form the driving line from knowing only the edges of the track. The basic line would of course just take all the corners as wide as possible, though this is not exactly the best possible line ever. This doesn't sound like a very easy task, but I believe it would be mathematically possible to smooth the curve based on the left/right edges of the track... And after thinking about that, I began asking a question that a few others did, why not give the AI knowledge of this line. Either precomputed or by giving them the information from an editor of some sort...

Thinking about giving the AI knowledge of the driving line goes against some things I have said/planned since the beginning of the project. But as I was thinking about this, in a human we know the line because of our instincts or something. And I was thinking that the AI would use it like this. The most important thing to know is I do NOT want the AI to drive from point A to point B then from point B to point C... That is the way current AI systems generally work, and I feel the placement of the AI car is too exact, their actions are like a robot and they rarely make mistakes in the same manner a human does. So, I began thinking maybe using a driving line, but in the manner that the AI doesn't drive TO a point but rather towards a point it might work.

The Idea:
--------------------------
Using the general ideas of the normal approach, but with a twist. The driver does not need get to know the exact destination point; though they do get to triangulate the point using their reference points. Since the drivers reference points are estimated/approximate, the destination point will change slightly from lap to lap. (Slightly depends on the driving situation and other factors that the reference point estimation uses.)

Unlike the normal approach I will try using less "DriveTo" points meaning instead of several per corner the AI will get at most 3 per corner: Entry, Apex and Exit. There will be none per straight because the next "Entry" marker would work well enough for where to go. I feel this is going against the initial goals, but I also wonder if it really is since the driver has to estimate where to drive to based on their reference points. The more reference points they can use to triangulate the position the more accurate their point. Meaning, if the reference points close to the DriveTo point are blocked then the DriveTo point becomes less accurate and harder to hit.

In this situation I don't think the AI uses reference points as 'braking' points anymore although perhaps it does and I am missing a step. Perhaps what I am describing happens on a layer above the "Attempt Layer" in my previous idea. Perhaps this is a "Direction Layer" and the "Attempt Layer" tries following the direction as fast as it can.

----------

Now this presents a very interesting problem when it comes to a blind hill. Like AS1. In real situation a human would practice that corner a few times at a slower speed, then speeding it up. It's a blind spot, unknowns. The memory would build and reference points let you know whats behind the hill and where to aim - even if you can't see it exactly. So I wonder if my new "DriveTo" point, although hidden behind a hill, would still be estimated based on the Tree-RP and when visible the TireStack-RP which will allow the AI to judge better at where they are aiming. Perhaps it fails altogether; but I still need to get this working as an idea before I try coding it!

This is about as much thought as I have been able to put into this as of lately. My main worry is that it goes against the initial ideas. Which I am becoming less sure about to be honest. I thought I had a clear idea, but apparently I don't since i am starting to wonder if this fits with the initial goal or not.

For those that have followed the thread, and *actually understand the question* please I want your input!
blackbird04217
S3 licensed
I'm going to have to agree with Android on this one, the only thing that matters is you know your oversteering. Any one thing, or multiple combined things in that "second way of thought" is how a human can perceive that they are oversteering. The most important effects are physical feelings and knowledge of tire traction (via sound/feel through steering wheel etc.). That is where the AI sensory will stop in this situation.

You're point about the humans going through the process is slightly skewed. I am sure during a surprise instance that it takes a moment for "wtf happened and what do I do" but when your driving at the limits you know which tires are likely to start sliding, and you are already countering that, subconsciously or not, while driving at the limit. Take my favorite example: Westhill Rev with the LX6, (You'll see another post about this shortly - still writing it in the other window). After the chicane, and before the final split the car is traveling up hill, very important to keep at the limits of the rear tires while not going over. It is an extremely balanced act of throttle and steering input. And for fast laps its important not to go over the threshold of the tires as it loses time. The sim racer uses visuals to interpret as "physical feeling", but being in the car would give you so much more accurate information than just that. The tires also produce the sounds and in this situation you are listening closely to the rear tires, to keep them at the limit without going past it.

Now of course there are situations, several times each lap, in that section where the driver goes above the traction limits and starts sliding. And chances are even before this slide the actions have been taken to correct them. If you read a bit of the second page you would see I have a "Prevention Layer" and a "Correction Layer" which separate these things. As a driver you know you want to stay at the limit and go up that hill. You're own prevention layer forces the foot off the throttle by a bit so that the traction stays, and the correction layer is used when you're slipping too much. Of course in the human brain this is happening so quick, and we can't say that it happens on multiple levels.

And Android to answer your question if I haven't yet, I want to use a "Physical Sensor" for the AI to have feelings of their motion, and the estimated traction of the tires. (Each one, or front and back only)

I will be back to post a few questions about my progress as soon as I finish trying to figure out the best way to ask. Some things have been taken the wrong way in the thread, probably my own confusion added to the mix, but I want to try explaining it correctly.
blackbird04217
S3 licensed
Not exactly. I haven't started the coding front as I am still working on the technical design. Been a bit busy the last couple days with family issues. I pretty much stand at the same spot where I ran into the brick wall, but for an update this is what I got.

Most of the high-level stuff, non-technical stuff has been decided.
I started working on the technical design, to prove how things interact with other parts.
I am surprised that I was able to make 1 point of entry; AIWorld.
- Once during loading all reference points are placed into the AIWorld by exact location. (Possibly a terrain mesh, and car meshes for visual obstuction)
- At the beginning of the frame the AIWorld is notified about the AIPhysicalSensor for each car; including tire traction, g-forces etc.
- At the end of the frame the AIWorld gives back the AICarController information.

The only thing needed, which probably happens at load time, is to load a memory of the track into the AIDriver's memory.

--------

Which leads me to the large problem of how to make the memory, whether the memory is actually 'memories' or 'instructions', I use both terms as I have no decision on how it is to be used. But instructions mean the AI will learn from an example that a consistent developer controller car will give them. Some special mode to let the AIDriver specate a developer and set their knowledge of what to do and where to do it...

The problem I am having is by recording a developers actions, I will likely get information that I don't want the AI to have: "Correct this little oversteer here" or "tap the brake lightly to stabilize car here". I don't know if this information is good for the AI or not, and there are so many changes in input that I can't just register a change.

I have thought of adding some sort of reference point that tells the AI to aim near it when it passes another one that it was aiming at. so there would be one of these per corner - however that is going away from what I wanted to remove: "Drive to here, then to here" line. But I've been trying to use this type of point only based on the other reference points around. So the instruction is not: "DRIVE HERE" but rather "aim to get these X reference points to this orientation".

So a few problems remain:

Getting the memory/instructions - and interpreting them where to go. Will post later, I have to go deal with family issues and people are rushing me a lot right now.
blackbird04217
S3 licensed
Quote from Shotglass :ever since whichever patch fixed the high nose exploit the aero forces are applied in the world coordinates so no they arent applied in exactly the same way and the vertical force calculation most certainly is already signed as it is

I don't think I was around with that exploit, if so I don't remember it well enough - possibly back when I was demo?

Anyways, even without this fix I am not sure how the lifting effect of the BF1 while upside down is not the same as the downward force that is pushing it against the road? Surely the same force is causing both effects here, I can't think of another reason for it.

A wing, as designed on the BF1, at speed will press downwards. If you keep the speed the same, except turn the BF1 upside down the wing will now press upwards. That is where I am coming from, so I don't see how its not the same force?
blackbird04217
S3 licensed
Umm, what?

------

You just completely confused me on several layers. First thing bugging me most: no horizon statement. What I meant was no visible horizon of mountains, trees etc. Just grass forever.

About the "we don't actually see points" I wasn't going into the miracle's of how the eye works and how the brain interprets these signals. Though if you wanna turn it around, in the game/simulation you see points; they are called pixels. But besides that, I wasn't being 100% literal with the "we see points" but you can see how I broke it down into "we see points", if not ask again and I will try explaining both those situations above again.

Quote :
In your hypothetical room even with the points, a human would soon become very disoriented.

That was exactly my point to make, a human with no appropriate shadows would be very confused, add a few dots and they would at least know where to stop running before they slammed into the wall again, even if dots are not on the wall they run to. My point there was that points are used for reference. No other knowledge needed.

Quote :On the other hand, if the reference points are just used for "start braking now", "start turning now", then the whole system will fall apart in all but the simplest of environments.

Well, then that might be the case of this project, but who really knows the outcome.

Quote :If the reference points are used by the AI to triangulate its position and allow it to monitor its rotation and position with respect to an internal track map

What does position mean if it is not relative to something else? Nothing. I am trying to make it so the AI doesn't care about their position but DOES care about their position relative to other objects, how close am I? What direction is it pointing. I am not saying the AI won't triangulate it's position based on the points, that is a very plausible thing to do - though it will still be estimated.


Quote :No, not in my mind. I would use every trick in the book to make the AI SEEM more human if it was my project.
But going by your ealier posts suggesting that any extra knowledge thats not available to the player is cheating, these points are cheating in your mind.
I guess you must have changed your mind?

This didn't tell me how you considered it cheating. My earlier posts said I want to get rid of information such as a direct racing line to follow. Not that a developer couldn't put a cone that holds reference point information. In either case, I don't see how knowing these reference points give the AI more information than the player - So I still don't see how it is causing the AI to have more information than the player? Please don't dodge the question if you have an example of it cheating.

Quote :
Quote from me :I get your mountain example very clearly, but I don't see how having a starting point fixes that issue.

Maybe you didn't get it so clearly then?

No, I understand 100% perfectly what you mean, if your on a peak and comparing something you tried you will consider it worse than what you already have - even when your not to the top of everest yet. But I don't get how having a "starting point" in this situation helps at all as it could be that the trainer / starting point is actually at that smaller peak - therefor the AI doesn't go anywhere else.

It is important to know that I haven't had major plans with the AI actually learning the track, I've toyed around with it here and there - and thats where that comment originally came from, me toying around with the AI learning from nothing, or spectating a human trainer that gives them their info.

Quote :It seems to me that to get closer to something that might work, you have to stop thinking so much like a human, and more like an AI

Possibly but currently I have been thinking on a higher level, and have dipped into the AI level a few times. If you've noticed a few posts up I wrote that I have it all formed together except how to achieve these instructions/memories - which ever it is. However the AI is bringing up a reference point and going this is where I turn.

Quote :I really think its a shame that you're not interested in persuing visual processing. If I had the time, thats where the interesting stuff is.

This isn't remotely interesting to me. Actually I despise graphical coding, and even though this isn't graphical coding it is the reverse. My interest is in the AI part of this equation though it was more of a thought.

To be honest I am becoming more doubtful about the developmental stage of the project. If I can come up with a clear way to use these reference points and train the AI somehow then I might be more apt, but I still have a lot of thinking there and it is becoming the brickwall. I know there are ways of doing it, but I am considering the best way to achieve. So far my ideas fail in some regards even if it works in others.
blackbird04217
S3 licensed
That would be an assumption that I believe would be correct including the the real world physics of such an effect, correct?
blackbird04217
S3 licensed
Quote from Shotglass :its certainly not a problem with the model (not since the high nose fix at least) as theres some very noticeable lift if you flip the bf1 upside down at high speeds

The BF1 'flying' while upside down is the act of downforce from the wings. That force is still applied exactly the same as if the car was right-side up, but since the car is upside down it flies. It may not be a problem with the model, as Android pointed out it could be set to 0 eliminating the lift from those cars without downforce. It would be interesting to race when the car gets lighter the faster you go!
FGED GREDG RDFGDR GSFDG