Advertisement

Storing AI data in a SQL database?

Started by January 24, 2016 08:54 PM
4 comments, last by captain_crunch 9 years, 1 month ago

I have an idea to use SQL (mainly Python's sqlite3 module) to store AI data.

I created a chatbot in Python a while ago:

https://github.com/TutorialDoctor/Python-Snippets/blob/master/Utilities/chatbot.py

And I am learning/teaching SQL basics:

https://github.com/TutorialDoctor/Programming-Language-Tutorials/tree/master/SQlite-Tutorial

I needed a project to work on to demonstrate how SQL could be used.

How plausible is it to use SQL to store artificial intelligence data?

Anyone know of any resources that could get me started in how that information would be structured?

For now, I think I can just store it in the database rather than in the memory array and that would be that.

Just really need some guidance.

I would also like to use SQL to store fuzzy data sets. Any direction on that would be helpful also.

They call me the Tutorial Doctor.

Why would you do this? What gains could it possibly give you?

Most data consumed by AI systems is static and non-relational in nature, e.g. navmeshes, utility curves, behavior trees, FSM specs, and so on. For the dynamic data (sensors, perception systems, et. al.) you're going to want something far more tied to your world model (game) than a SQL database.

I'm not going to say it's the worst way to implement it, but... ;-)

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

Advertisement

I just needed a project to use it with to showcase how to use SQL. Couldn't think of a "cooler" project. I could just do typical database stuff with names and information about people, but I didn't want it to be so boring.

I am guessing now that SQL is not particularly beneficial for "dynamic data." In that case, can you suggest a way to store this dynamic data? I was thinking it was a good thing that an SQL database can be stored in memory, and also that such a database can run on a server.

This is for educational reasons though, so I would like to make a good example project if anyone has any recommendations.

They call me the Tutorial Doctor.

Read up on relational modeling and the kinds of information it is well-suited towards representing; there are literally innumerable possible things you could model relationally. It would also be very educational to learn where relational data is not suited.

Libraries (as in the old-fashioned buggers with all the books), warehouses, employment records, vehicle data, and so on are common "demo" projects. If you want something more complex, I highly recommend looking into what the modeling techniques are good at doing, and finding your own examples.


[edit] Of course the obvious use case is sitting right in front of us, too: forums.

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

Great advice. I will look into all of the above. Thanks ApochPiQ.

They call me the Tutorial Doctor.

(deleted)

This topic is closed to new replies.

Advertisement