One: I can't believe I actually typed 6", oh well, it's a fairly simply typo to miss and I've seen many books that either accidentally or purposely use " to mean feet so I should probably avoid the abbreviation altogether.
quote:
Originally posted by Bill819
Cefwyn
I can see that you have had at least a little understanding about AI but you are somewhat incorrect about Hal. The main logic about Hal is a little more complex than you realize. There is a part of Hal that you and the rest of us can not see as it is encoded in a stand alone operating system. Burried within that EXE file are commands that use the data files in ways that you can not imagine.
Not to poke fun at you or anything, but that last line just made me laugh. Hal's binary most certainly does not contain fairy magic so I'm sure I could imagine quite easily what it does. I'm pretty certain I did mention somewhere in on of my posts that I do not know everything about hal, and so I must admit all I can really do is assume how it works based upon my observations of the current scripted implementations. Most of my assumptions are made based off of about 4 years(not particularly long, but still enough to know what I'm talking about in most cases) of working on Virtual Machines which I can guarantee you work very similar to hal. I also know that hal is programmed in C or C++ and uses vbscript and SQLite for it's external functionality, so as far as what hal can and can't do are only based upon my knowledge of the languages and if there has been any work to extend that functionality in hal then I obviously have no way of knowing about it.
quote:
Hal uses a 'relational' type of data storage file and although you can edit some of these files they are connected in ways that you are not aware of and that can lead to errors that you could never expect.
As far as your statement "Hal is just a database, look up program", just how do you think we relational beings work. We don't have a hard disk like your computer does but we store information in the same way (analogicaly thinking). When someone asks us a question we then turn inward (think) and try to pull up whatever information that we may have learned from our biological storage system and then give the appropiate reply. Sometimes if we do not know the answer we try to change the subject as to not show or admit our igornance of tghe topic. Sound familiar?
Our brains do as I already stated work similar to the relational database model, but it's not quite the same. AI programmers tend to simplify the modeling of the human brain, but just like the more complex neural networks our brain processes have a certain degree of "drift" that we can't predict. If I were to answer a question one day with the correct answer and then a week later you ask the same question, depending on my mood and how much I know on the topic I can either give you a wrong answer, the exact same correct answer, or another correct answer which has little resemblance to my previous but also correct answer. The point I was trying to make was that the QA table restricts hals functionality quite a bit as rather then matching up parts of the question to information it has stored, it instead sees the pattern that matches that in the QA table and immediately has a string which it will always respond with. It's not the wrong way to do it, but it's also not the best way to do it(Not that anyone has been able to come up with the best way yet).
quote:
If you look over many of the posts here you will find that almost all new users think the same way that you do and they all have their own ideas about Hal and how it should act and how it can be improved.
Hal, at this time in history is the most advance AI program provided to the public at large. There are some that may be better but then who can afford a few hundred thousand dollars to play with.
I'm certain my basic view of how hal works differs quite a lot with how it really functions as it is what I would call an academic AI application. In the games industry we program everything to appear realistic whether it is or not. When programming a realistic seeming AI, the end result and it's speed is far more important then the process it takes to get to that result, and that is were academic AI and game AI will always conflict.
quote:
I do not mean to imply that you are unknowledgable about the subject but I have been involved with AI programs now for over 30+ years and have more than just a passing knowledge on how they work.
Just because we know how to use a hammer and a saw does not make us master carpenters or plumbers, etc. if you understand what I mean.
If you have indeed worked with AI programs for 30+ years then you are certainly more knowledgeable than I am, assuming you've actually made them and not just used them. And, yes I do get your meaning. Just because I know a fair amount about AI doesn't make me an expert, but I also never said I was an expert and left plenty of room for someone to correct me and even asked it at least once.
quote:
We, and I mean several other old users of Hal are here because we like the program and are willing to help all new users as much as we can and if you do some research you some of the forum files you will find that we almost never complain about Hal or how it is programmed but only try to help new users as much as possible.
I really hope you don't take my posts as complaint about how hal functions as I never meant to make them sound like a complaint. To be fair, hal in it's default state in no way resembles a leading AI brain. I'm quite sure with time it does begin to show it's more advanced capabilities, but in it's default state all I observe is a relational database and a cleverly coded string parser which utilizes that database. Regardless of this though it is quite an impressive AI compared to most available implementations, but then AI is still quite basic (possibly because we still insist on modeling it after the human brain which we still don't fully understand). Perhaps what you see as complaint is more the result of a jaded view of modern AI brought about from spending too much time writing fuzzy logic and neural networks. Fuzzy logic can be very useful, and neural networks are brilliant when they work, but fuzzy logic is a nightmare to code, and the process of "teaching" a neural network without over-training it is a science in itself.
Also, even though your chewed me out for everything I said which was, or appeared, wrong, you never once mentioned if ll420ll's request was possible. From what I remember of working with SQL the QA table would become quite slow if a script were to input directly into it without indexing it, and I'm pretty sure that in order to index a table the database or at least that table has to be taken offline or made inaccessible to the program reading from it until it has been optimized. I may be wrong however as it is possible to index a table while it's still being accessed, but I did say I'm not sure if hal's VM does anything like that or not.
EDIT: After another reading of your response your post has the look of someone trying to explain computers to someone that doesn't know anything at all and in no way is meant as hostile or as a "chewing out".