Help - Search - Members - Calendar
Full Version: my simulation, using computer memory, 3d animation mathematicians/coders advice please before i meltdown
BrainMeta.com Forum > Science > Computer Science & Coding
hazzzah
someone out there must be able to advise me on how 3d animation packages such as MAYA and AUTODESK 3D STUDIO MAX and so on, use memory during graphics processing. Someone must be the guy/gal mathematician/coder who puts the gaussian math formula somewhere and writes the function that you use when you click on "gaussian filter".

okay, all i have is a degree in pure physics (with an opics and a math modelling major thrown into it)...i had to make a few software packages for people for a while so i know some basic ASP and database stuff...

imagine being me and suddenly having an idea to code an AI simulation, knowing nothing about how to tell the computer to hold things and store values in memory, no idea what language to use, and wondering if i should hold some values in a database like SQL simply because of its indexing system making everything faster...and whether telling it stuff in VB Script will be as good as I can get...

or if i should be finding some way of coding lower down and keeping values stored in text files...i keep coming back to the thought, how do those major packages do things? it must be in the most efficient way...

at the moment I'm taking the ASP option but by rights I need help from someone, now! it's all very exciting and if anyone has spare time to offer advice, I'm Prince Charles (all ears)

charlie
lucid_dream
it's likely done through C++/OpenGL
Rick
QUOTE(hazzzah @ Aug 03, 2007, 02:02 AM) *
... it must be in the most efficient way...

It depends on what you mean by efficient: fast for the computer or fast for the programmer.

Many people today dispute the idea that AI is possible via a purely programming approach, but I am not one of them. I think AI is possible with conventional computers with the right program.

The most "efficient" programming language is assembly code, but it's difficult for programmers to conceptualize what they are doing in assembler. The C language is a higher level language that makes it easier for the programmer to remain unconfused. It's more efficient for the programmer.

C++ is a higher level language that might make it easier to program AI (with object modeling), but performance suffers. Java is an even higher level language, making it even easier to program complex systems, with even more severe performance problems.

However, as the main problem in AI programming is not speed of execution (but that is a problem), but a problem of conceptualization, I would use JAVA if I were to set out to create an AI. By the time I finished the program, I would hope that due to the action of Moore's law, the computer hardware would be there for me to run the program on.

For data storage, I would use a hierarchical object model that parallels (or somehow mimics) the structure of the English language. Mapping the object model into a relational database (such as is accessed with SQL) is possible, but not necessary.
cerebral
for AI try LISP
Rick
Been there, done that. Modern Common Lisp is quite capable with GUI interfaces, objects, etc., but there are no inherent advantages over an object oriented language. All list processing functions can be replicated in Java, for instance.

I believe the topic starter had a new approach in mind:

"... imagine being me and suddenly having an idea to code an AI simulation ..."

One reference of interest is Intelligent Java Applications, by Mark Watson, Morgan Kaufmann Publishers, San Francisco, 1997.
cerebral
Java isn't a functional programming language which is what you would probably want for AI. Scheme is a newer version of LISP that may be relevant.
Rick
Certainly, for conventional "AI" (expert system) programs, a language for functional programming will work well. But I think the topic starter had in mind some new "true" AI that has been eluding researchers all these years. My approach would be epistemologically based. I think a theory of knowledge can be mapped into natural language conceptualizations using an object oriented paradigm.

References:

http://en.wikipedia.org/wiki/Functional_programming

http://en.wikipedia.org/wiki/Scheme_%28pro...ing_language%29

http://en.wikipedia.org/wiki/Object_oriented_programming

All that being said, there are benefits to any language, and the programmer may feel more adept at one or the other. Ram Nevatia, the director of the Institute for Robotics and Intelligent Systems at the University of Southern California

http://iris.usc.edu/

once told me that the difference between a LISP program and a C version of that program is that the C program has bugs in it.


lucid_dream
For an AI simulation, I definitely would not use SQL or store info in text files. Why not just store everything in RAM? You still have to choose a programming language. Functional languages may be more apt but procedural ones have a lower learning curve, and you'll probably want to use object oriented programming. You haven't specified the nature of the AI simulation, and this is important since it will constrain the types of programming languages you should use. For instance, the Game of Life can probably be coded fairly easily in assembly, and definitely in C.
trojan_libido
I'd go for anything your comfortable with in all honesty. I'm a visual basic coder with database and internet experience in ASP etc. I'm actually leaning towards C# now as are many others, but I think that any language will do to get a prototype and check your idea through. If its all good then you can start to worry about speed and storage issues.

But whats the idea Hazzah, maybe a collaboration is in order?
Rick
QUOTE(lucid_dream @ Aug 04, 2007, 12:32 PM) *
... Why not just store everything in RAM? ...

For permanent learning. At some point, the computer will be shut down, and we would want the AI to remember what it had learned when it's fired back up again. Also, it might be good to have some kind of knowledge base for initial startup.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.


Home     |     About     |    Research     |    Forum     |    Feedback  


Copyright © BrainMeta. All rights reserved.
Terms of Use  |  Last Modified Tue Jan 17 2006 12:39 am