1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

AI and ATC SDK

Discussion in 'Living World & AI General' started by fs1, 11 Oct 2017.

Tags:
  1. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    I was wondering what is possible to do and what is not possible to do via the P3D/FSX SDK and FSUIPC regarding AI traffic and ATC features.
    For example, can you assign a runway for an AI to land depending on wind?
    Any insights on the restrictions of both SDK and FSUIPC are appreciated.
    Thanks
     
  2. him225

    him225

    Joined:
    13 Oct 2015
    Messages:
    87
    As far as I have seen it is currently not possible to externally instruct anything to AI pilot or the ATC system. You can take over control of the AI plane removing AI pilot and ATC from the picture, completely fly it externally or slew, then give back control to AI system. That much is probably at present all you can do. Hooks to the AI-ATC logic have been requested several times since p3d launch, but little has changed in this from FSX. Perhaps the AI pilot and ATC are too intermingled that it is difficult for LM to provide any connections from in between.
     
    Last edited: 12 Oct 2017
  3. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    Thanks @him225

    As far as I understand, I think that this slew solution works pretty well. What are the downsides ? Maybe performance wise ?
     
  4. =rk=

    =rk=

    Joined:
    28 Nov 2009
    Messages:
    1,523
    Country:
    us-washington
    There is no performance impact for using slew. However, you will not be able to slew a different runway assignment. So were you to slew the AI over to the downwind runway, as soon as you release it, it will diligently attempt to complete it's ATC assignment.
     
  5. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    Thanks =rk=

    So once it starts taxing, if you restore back the slew the AI attempts to fly the default ATC assigned path?

    So how addon manage to bypass this?

    Any other limitation in those workarounds ?
     
  6. =rk=

    =rk=

    Joined:
    28 Nov 2009
    Messages:
    1,523
    Country:
    us-washington
    Only by replacing the ATC functionality can this be changed.
     
  7. him225

    him225

    Joined:
    13 Oct 2015
    Messages:
    87
    The sounds of that AI don't work or get fixed to the moment it changes to slew. Since the AI is not flying, you will need to emulate all the smooth pitches and rolls as well on turns etc to make them look acceptable in the air.

    As long as it is still in the air perhaps, if you bring it to the ground it would probably come to a standstill on releasing control.

    The addons usually end up emulating all phases of flight gate to gate. eg AIController program which attempts to actually fly in most parts but ATC goes completely silent, or other primarily ATC addon programs that work by slewing. The other issue with this might be complication with p3d AI flightplan scheduling system which decides when to spawn new or command ground AI for next flight that you may have to take into account.

    In my opinion in current state the most workable solution is the method of the old AISeparation program which simply slews back AI to desired separation and leaves the rest untouched. This leaves everything functioning as usual. I have had much success with the setting of: 6, 7, 5, 10, 8, 10 if you are interested in looking at it. The program is old with some bugs and could still use some more refining (such as simconnect use than fsuipc, separation distance based on AI model/speed, work with user aircraft) so it still ends up letting some go-arounds occur when too many AI in conflict. The limitation that remains is if arrival AI happen to crowd a particular runway which depends on its geographical location relative to departure airports, then there will be prolonged delay as arrivals cant be distributed to other runways as before without breaking the whole system. This can be improved a bit by taking over control of AI at the end of rollout upto the exit taxiway to speed up its runway exit which can appreciably increase arrivals handled, an alternate would be to find a hack for ai player dll to increase taxi speed in general similar to FSX. Feel free to ask if you have questions on use of aiseperation.
     
  8. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    Thanks both.

    I am working on an undocumented workaround for this problem.

    Let's say I am able to load a FP to an AI and then I am able to change that flight plan as required. By this way you can make longer legs, maybe inject holds and even simulate a STAR by modifying the existing legs (shorten them or extend them or dynamic add an additional leg)

    Would this close this gap ?

    Thanks
     
    Last edited: 13 Oct 2017 at 11:30
  9. =rk=

    =rk=

    Joined:
    28 Nov 2009
    Messages:
    1,523
    Country:
    us-washington
    Thanks, but if you're going to answer questions asked me, please do so with some measure of authority, guessing wont tell us what happens to a slewed plane. You've established your authority based on experience with Flight Simulator AI Traffic Separation, which was released for FS2004. Please name addons that usually end up emulating all phases of flight that you refer to, thanks.
    I think you are going to want to follow up on this search and explore some of the products and talk to actual users. Bear in mind that most ATC addons like VoxATC focus on the user cockpit environment and do little to change the functionality of default AI/ATC interaction, while most AI addons, like MyTrafficX, recreate the AI fleet and airports and do very little in terms of ATC, sometimes adding a few user features.

    It looks like your plan is to establish a virtual identity for each airplane in the way AI Flight Planner works. I caution you to keep that identity in some sort of raster table format, meaning only a few unique values for each AI vehicle. If you make actual virtual airplanes for the flight simulator to render, you'll quickly run out of memory. AI traffic is much more like a flock of birds, or even an amoeba, than it is like a collection of airplanes.
    Ultimately, it's a simulator. In order to immersively simulate flight, there has to be traffic. Clicking a slewed plane and directing regional traffic tend to break that immersive feeling and you'll want to address that aspect.
     
  10. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    Thanks. I will do some research and also speak to some of the developers as well.

    Last question:

    I understand AI Flight Planner uses compiled BGLs to set up AI FPs.

    With the current state of the SDK/PDK, can you dynamically change Flight Plans once is sent to the AI?

    Thanks
     
  11. him225

    him225

    Joined:
    13 Oct 2015
    Messages:
    87
    Not sure this will work since p3d ATC stops following the flight plan routing at T/D which goes as far as 80nm from destination airport and starts vectoring from there both user and AI aircraft.
     
  12. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    @him225 the waypoints of a flight plan and the vector atc data are, in memory, the same.
    The whole idea is to try to control these on the fly to try to simulate real behaviors.
    My only question is, in case of land operations for example, how to control the turn rates and so on, so as to be able to do accurate flight paths, if necessary
    I really don't know much on these so I am investigating
    Is there a way you can change the turns? Is it hardcoded ?
    Thanks

    Edit: Found this but no conclusion http://www.prepar3d.com/forum/viewtopic.php?t=6627
     
    Last edited: 15 Oct 2017 at 20:12
  13. him225

    him225

    Joined:
    13 Oct 2015
    Messages:
    87
    If you are not planning to have the p3d ATC involved then it may not come as an issue, as the default ATC does not refer to navdata or the flightplan for vectoring purpose and uses hard coded vectoring based on runway heading such as for 30deg ils interception.

    For quirks regarding maneuvering you may want to contact the developer of this program who dealt with much similar problems: https://www.avsim.com/forums/topic/...e-to-gate-control-open-betacontrol-open-beta/
     
  14. fs1

    fs1

    Joined:
    14 Jan 2013
    Messages:
    165
    Country:
    argentina
    Thanks I will be contacting.
    The whole idea is to use the ATC/AI framework and inject legs/vectors on demand.
    I will speak to this developers and see if makes sense to them.
    Thanks
     

Share This Page