Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

DrjonesDW3d

Is there anything like Open AIL or DirectAI?

This topic is 5622 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

It seemed graphics got to the point where there was some basic progress to the point where there were some set ways to do everything, at which point they wrote a language of functions (Open GL) that took care of the basics so people could start implimenting better stuff. It seems that it''s logical for something similiar to happen for AI. Anyone know of a project that is currently trying to do this? Create kind of an Open GL for AI.

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
Holy crap, no. I suggest you look into AI -- it''s a lot more complicated than you think. There''s no ''general purpose'' AI system out there, other than maybe a few generalized search algorithms.

Share this post


Link to post
Share on other sites
http://openai.sourceforge.net/

OpenAI. However, it doesn''t seem like this is going anywhere. What I was trying to say was, "there''s going to be".

Share this post


Link to post
Share on other sites
Yes there is... introducing FEAR. It stands for Flexible Embodied Agent aRchitecture at the moment


We''ve been going for over a year, and - many prototypes later - we have a nice design to show for it! The latest release was a nice milestone, as we included a perceptron module.

I''ve not been actively promoting the project as I think premature promotion is a source evil. We''re certainly much closer to being ready for developer attention; the code has always been nice, clean and commented, but the Q2 demo could be friendlier. This should improve in the next release.

So be tolerant... I also wanted to put all our design ideas and technology down into one document (instead of scattered throughout the site), but I have some very rough deadlines atm. More on that in late June.


Anyway, there''s much more technology in the pipeline too! Stay tuned.

Alex

PS: OpenAI is indeed dead. It was java anyway! Their most active developer has shown interest in FEAR, so I hope to snap him up and get him working on the Java interface...

http://fear.sf.net/

Share this post


Link to post
Share on other sites
quote:
Original post by Anonymous Poster
Holy crap, no. I suggest you look into AI -- it''s a lot more complicated than you think. There''s no ''general purpose'' AI system out there, other than maybe a few generalized search algorithms.


Well from what i''ve gathered from AI from looking at it during the past few years, I disagree. There is a lot of AI that is simple algorithm that doesn''t need to be rewritten for everything. It''s not just searching either, look at Neural networks and fuzzy logic. Both on the opposite ends of the AI spectrum, yet the meat that does the hard stuff can all be hard coded. There is just some simple variables and so on that need to be set for it to be functional. It''s just like graphics. You can put the triangle any place you want, and color/texture it in any fashion, but the way it''s drawn is the same. This is true for a lot of real AI algs. It''s not simple enough to encompass all the AI needed for a game (or other project) into a few lines of code, but that''s not the purpose. The purpose is to give programmers a set of tools they can use to us ai in their own fashion without having to reimpliment everything that''s already been done 100 times.

It might not have the same archetecture as OpenGL, or the same kind of interface, but i think with some clever coding and design skills it''s definatly not out of the question.

I''ll take a look at both FEAR and OpenAI

Share this post


Link to post
Share on other sites
While I would love to see such a toolkit come along, I don't know how useful it would be. Of the AI code I have worked with, less than 10% has been system based -- it is almost all special case code for the game such as behaviors, etc.

While moving that 10% into libraries could be beneficial, I think that 10% probably is different for almost every developer as all have different needs.

AI generally seems to tightly coupled to a project there might not be too much code general purpose code to move out.

The only pieces I can think of right off for my past projects:

* AStar implementation (covered well in the AI Gems series to the extent that seems practical)

* High level animation system (basicly, how the animations interact engine -- do animations drive behavior, or does behavior drive AI? Doesn't seem like it has been covered too deeply, but I think every title has its own needs here)

* General state machine implementation (many are floating around the net. This isn't specific to AI)

* Knowledge representation (highly app specific)

I think the implementation of the AStar/neural net/fuzzy system is the simple part -- the hard part is knowing how to integrate it into the game, when the game calls for such a technique, and processing the data going in.

(In the interests of full disclosure, I believe that too much emphasis has been put into fuzzy/neural systems the last few years, as this is a tiny part of what goes into making a game AI. Neither are at all required, yet it seems like 90% of the discusion and literature is on them.)

[edited by - cannelbrae on May 5, 2003 3:00:35 AM]

Share this post


Link to post
Share on other sites
One of the roadblocks to an OpenAI or DirectAI is a lack of standards for AI interfaces across games (and other applications). There is work being done (see AI Interface Committe) but the progress is slow (due to alot of reasons). Before there can be standard toolkits, there has to be a way to define standard interfaces. Perhaps you have the solution? If so, you might consider applying to the committee (see website above) and participating.

Eric


[edited by - Geta on May 5, 2003 8:58:53 AM]

Share this post


Link to post
Share on other sites
Yes, an official standard will help tremendously, but I don''t think it''s a roadblock. Many current "standards" started off as proprietary solutions, like OpenGL or D3D.

If the market for toolkits was big enough, existing middleware would eventually grow into standards.

Share this post


Link to post
Share on other sites
I''d tend to agree... standards tend to work best when you already have something working and you agree to open it up to improvements, rather than by getting 101 people together to try and choose something.

I think there is already a good template-based GA implementation.... you could probably add a similar neural net implementation to that easily enough. A generic search/planning algorithm would be easy too: they have such an implementation at http://www.bell-labs.com/topic/books/ooai-book/download.html although the license is not suitable for anything but learning purposes.

What else would be useful?

[ MSVC Fixes | STL Docs | SDL | Game AI | Sockets | C++ Faq Lite | Boost
Asking Questions | Organising code files | My stuff | Tiny XML | STLPort]

Share this post


Link to post
Share on other sites
quote:
Original post by Kylotan
I''d tend to agree... standards tend to work best when you already have something working and you agree to open it up to improvements, rather than by getting 101 people together to try and choose something.



How are you going to get "something working" that I, and 100 other game developers will agree to use?

If you think you have some good ideas, why not apply to participate in the planning working group?

Eric

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!