Sign in to follow this  
DarkThrone

Why is so hard to find anything useful?

Recommended Posts

Why is so hard to find something useful? I read a couple of forums here and in other sites and ever someone need a kind of help in some, all answers are either vague and/or only a fun in mind of others. Forums are created to people share knowledge, not for a Elite Programmers Group look at it, laugh, and reply with sarcasm that your find it's endless and waste of time.

Share this post


Link to post
Share on other sites
Doing research is a very difficult skill. It takes a lot of practice and a lot of thinking to be able to ask good questions, and find good answers. Some people simply naturally take longer to acquire that skill. This may or may not actually be the cause of your problem, but it is certainly the cause of the prolifacy of bad questions and worse answers that make up the bulk of internet forums.

The unfortunate thing is that this leads to a tendency to make lazy responses. When forum regulars see the same questions a dozen times in a week, they get tired of answering them all with the same level of depth and attention. As a result, you'll often see replies from a few people who are too busy, too jaded, or simply can't be bothered to make a hugely detailed reply that solves all of your questions. Beginners especially fall victim to this phenomenon; a lot of novices' questions basically amount to "do my work for me." Nobody wants to do someone else's work for free - we've got our own work to do. Rightly or wrongly, sometimes the most knowledgeable people will give poor answers simply because they have gotten the feeling that they're doing someone else's work, and this doesn't appeal to them. The less obscure your question is, the more likely you are to encounter this; unfortunately, the flip side is that the more obscure your question is, the less likely you are to find someone who can properly answer it.

Another serious problem is that many questions are asked out of laziness. A fair number of people would rather spend 5 minutes posting a question to an internet forum than spend an hour looking up good resources (no, the Internet is not the only resource you need) and doing their own research. In some ways, it is hard to blame people with this attitude; but if you look at it from the perspective of the people who are supposed to answer the questions, it can come across as very inconsiderate and lazy. After reading this kind of question all day, it's only human to get sick of it and quit doing other people's research. The problem is, since doing good research is a difficult skill, this phenomenon will never go away and in some sense is actually an inescapable part of the learning process.

Not knowing anything about your specific case, I honestly have no idea which (if any) of these problems has contributed to your experiences. Just some generic observations on the way internet forums in general tend to operate.


In any case, not to be anal about it, but this doesn't seem to belong in Artificial Intelligence (unless you're writing a homework bot [wink]). Posting things in the most topically relevant forum is often very helpful in getting meaningful feedback. If your questions are relevant, you may even get good results in the For Beginners forum (even if the subject isn't a "beginner" topic) simply because that forum is specifically designed to provide attitude-free answers. Just note that asking questions about multidimensional integration in For Beginners will probably be frowned upon - this falls under the category of posting in the relevant places [wink]

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
Why is so hard to find something useful? I read a couple of forums here and in other sites and ever someone need a kind of help in some, all answers are either vague and/or only a fun in mind of others. Forums are created to people share knowledge, not for a Elite Programmers Group look at it, laugh, and reply with sarcasm that your find it's endless and waste of time.


Maybe it'd be easier if you said what it was you were looking for, rather than complaining that no one has given you a good answer yet. ;)

I've found tons of useful posts here, usually by searching, but on the few occasions when I've actually asked a question, that's worked pretty well too.
But yes, maybe it is hard to find something useful. That's just because you have so much information to sort through to get what you're looking for. As was said, researching isn't the easiest thing to do.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Are you speaking about artificial intelligence forums or game programming forums? If your complaint is specifically concerning artificial intelligence information (I am assuming this because you posted it here), I would recomend looking to text books and research papers. Suprisingly the AI information on the world wide web is not all that good.

Share this post


Link to post
Share on other sites
The problem is: Until now, if all of you check on the forums ( all, including all on the net, not only here.) ever that anyone asks for a resource useable, receives reply as "oh, this thing you can do you never can". or "oh, he thinks to any will give the key-for-the-gold". I not asking for a "do-my-work-for-me", I ask simply for any, if can, give me a simple example of how-do-it, as NeHe provides in your site using OpenGL. So, if any can, either post a single piece of code for reference (I don't like and don't want copy the work of others, only understand, how do what I want to do.). Programming is so hard, most yet in a country where don't offer any possibility to learn if you can't VERY dedicated and don't matter if you are a loser one. I am a self-learner, spend almost six months to understand C++. Full potential guys created amazing things in times of BBS and monochromatic screens using knowledge gathered on net. It's the essence. If a forum purposes a help in a community of programmer, nothing but true that they help one by others.

And think, sometimes the Internet is only the acessible resource to someone finds what he/she needs. Books and other things in same line are to expensive in some places and hard to find in others. If someone can have acess to information, he/she can begin to work early and finish it early.

I need to say, it's not a acusation, it's fact. If you check a ANN tutorial, you will find a complex mathematical formula instead a single piece of real code. Theory is good for ones that understand, but many people uses to attempt and fail to learn something and see if is useable or not. If any show only the door, with pratice all learn how go in.

Share this post


Link to post
Share on other sites
don't take this personally, but i think you are underestimating how much work it is to program something. you need much longer than 6 months to learn C++, other than the basics (unless you are a super genius, of course). and you (allegedly, i haven't gone this way yet) need that math to understand how a neural network works. if you keep working on programming, and learn the math you need, at some point you will understand it and code it yourself, or at least find the perfect question to get the perfect answer to fill in the missing pieces.

patience is the key (i would say google is the key, but you already mentioned that :)

also keep in mind that because of the nature of the internet, anyone can put crap on there, and most of them do. so it is hard work to find the good stuff, even on a website with specific topics.

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
I not asking for a "do-my-work-for-me", I ask simply for any, if can, give me a simple example of how-do-it, as NeHe provides in your site using OpenGL. So, if any can, either post a single piece of code for reference (I don't like and don't want copy the work of others, only understand, how do what I want to do.).

Ah, I see what you mean now, and yes, you're right. Too many people think "download this engine/library" is the answer to every question.
I find it annoying when I or someone else asks how to do something, or how something works, and people reply with "Just download Boost/Ogre/the DirectX SDK/Python or whatever else.

Yes, I could use Boost's smart pointers, but if the point in my thread was to ask what a smart pointer *is*, then it's not a very helpful suggestion. Unfortunately, I see that happen far too often.

The best you can do is to say *exactly* what it is you want. If you want an explanation, then say that, and make it absolutely clear that you're *not* asking for a link to people's favorite libraries/engines/languages.

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
I need to say, it's not a acusation, it's fact. If you check a ANN tutorial, you will find a complex mathematical formula instead a single piece of real code. Theory is good for ones that understand, but many people uses to attempt and fail to learn something and see if is useable or not. If any show only the door, with pratice all learn how go in.


The interesting problem posed with just posting code is that what works for one person, may very well not work for someone else. I'm not sure about anything else about game development, but I do know that there aren't many "general purpose" AI stuff. So, for most game oriented AI, its not like you're going to be able to copy and paste someone else's code, or even look at someone else's code and know what you need.

With the ANN example you mentioned, to fully use the ANN, you'll need the mathematical model anyways. Even if you get the sample code, you'll eventually need to reverse engineer it for the mathematical model that you'll need for your own purpose, which is why I think most people only talk about the math. Coding isn't the most important part of game design. Coding is actually the last thing you go into. This is why most of the times, when faced with questions, people tend to give high level answers, which to some may sound vague.

Even if people were to post code snipets, there's no guarantee that their implementation is "useable for you and your purpose, but that does not mean the technique is not relevant to what you need. You may need an ANN, but then there are lots of different implementations of it. You can't very well plow through all the different implementations. Even if you do, you might still just end up with that one simple mathematic formula and concluded, "why didn't they say so in the first place?"

Yes, its nice if people would post code, but in the end, you still need to understand the concepts behind the code to use it properly. So, the question is just whether you like to spend hours on end trying to reverse engineer possibly bad or unreadable code (happens sometimes) or start from scratch based on the fundamentals and maybe spend only half the time.

Share this post


Link to post
Share on other sites
Ok seems that some of you understand what I want to say, it's good.

Well, first of all, sure that coding it's the last thing to do. Because this, I spend last months both dedicating to research about find exacty I will do to implement the code.

A general purpose code is not the point. Ask for a general purpose code is simply ask to "do-my-work-for-me". I ask for ANY kind of code, since it is AI related. Is as the "toolbox", you never uses all tools, but have ever one to use in a case.

Let me explain exactly what I want:
I was planning a game that is a combination of a date simulator and a action that remember GTA. I have functions to simulate weather, relationship over characters, all the stuff. But one day, I'll think that seems good, if the player can say what he/she wants, instead of uses the same static options, how the "tokimeki memorial" and some kind of genre games uses.

When I look for a ANN/ATN to uses some piece of code modified to what I want to do, I find only a robot simulation, with weights and all.

Well, if the problem is say EXACTLY what i want ( if is hard to figure it... ), I just say it.

On the top, the program haves a stack. When you say anything, it process in the "chatbot module" and throw it on stack. The "emotion module" catches the result, process it, compare with "relationship values" and throw it on the stack. Finally, all values are updated, "chatbot module" catches it and return a response.

But thinks, if you can do it to yourself, or you figure that can think in all points and it result to fail, or you reseach and discover that the human brain is a powerful computer, with a powerful OS, but it's limited as any machine. Because this, groups are created to, how a net of computer, process all possibilities. So if anyone can help, it's be apreciated, proper credit will given, and code was be public to all use as want, also the modificantions I do, to all use to your projects, learns, and colaborates to a creation of a powerful engine (not a ready one, a one that themselves create, stable, without bugs, clear and understandable.) Seems as Utopia, but if all looks to fire and just say "ah, it's dying..." instead of feed it, all die of cold. It's not just to me, I'm sure that lots of begginners, medium level and I must say, until hard programmers that stops in some point out of resources.

Not run out of the topic, the problem is not my program, it's the group. If anyone open a topic as "Let's think in a brain simulation." and share ideas. A discussion group it's the point. Active people share a idea that will can use.
Understand me?

Share this post


Link to post
Share on other sites
Programming is as much about code as car racing is about petrol. You need petrol to race a car, and you need code to do programming, but there is a lot more to it than just that. I can't buy a can of diesel from the filling station and be a Formula 1 driver, and I can't just write magical words and symbols into a computer to be a programmer.

Many good, knowledgeable programmers will answer questions with theory, rather than code. This is for a few reasons. First of all, it is vital that a programmer know how to take a theory and implement it in code. Without this skill you will always have to rely on other people's samples to finish your projects, and chances are your final code will be a mess.

Second, as has been said, just having code does not tell you how the theory works.

__freon_inline extern float fracNoise(Vertex_S point)
{
float sum = 0, jl = 1;

sum = perlinNoise(point);

point.x *= 0.05f;
point.y *= 0.05f;
point.z *= 0.05f;

for(unsigned long i=1; i<=5; i++)
{
point.x *= 7.1784f;
point.y *= 7.1784f;
point.z *= 7.1784f;
sum += perlinNoise(point) * jl;
jl *= 0.77f;
}

return sum;
}


That doesn't teach you a lot about iterative noise functions, does it? It's an example of an iterative noise function, but you could stare at that code for days and never understand why it is doing what it does. Unless you are extremely experienced with writing noise functions, you won't be able to visualize the results, either - and if you are that experienced, you didn't need my code sample [wink] Now, if you manage to take that code and use it in a project, that's great - but what will you do when you have to change the way the function works? Will you just change the numbers in the function and guess, and maybe hope it looks right? Unless you know the theory, you cannot truly use the code - all you can do is copy and paste it.

Third, if you don't understand the theory behind things, they can seem like "magic." Magic is when things work but you can't explain how. Magic is extremely evil - if you write code that relies on magic, you are writing bad code. I'm not saying you have to know how quantum tunneling works in the transistors of a CPU to write javascript on a web page, but if you just copy and use code without understanding it, you are not writing code as well as you could be. The difference between a beginner and a master is that beginners have to do this - that's how we learn new things. A master never has to do it, because he has the knowledge and tools - the theory - to get things done in any situation.

A good programmer who gives you code to solve your problem is not doing you a favor. He is doing your work, whether it seems like it or not, and he is actually hurting you by making you rely on magic. A programmer who teaches you the theory of what you want to do, and maybe how to take some theory and make code with it - he has given you much more useful things. Give a man a fish, and he eats for a day; teach a man to fish and he eats for a lifetime. Give a man some code, and he has a cool program for a day; teach a man to code for himself and he can become a master.

Finally, as I started the post saying, programming is not about writing code. Writing code is what you do after your mind has finished programming and is ready to tell it to the computer. If you aren't thinking about and understanding the theory of the things you do in a program, you aren't programming - you're writing magic spells that make the computer do things.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
To add onto the above post, this is especially true for artifical intelligence. A lot of AI is about coming up with justifications for what you have done, through theory that often has very little to do with how things are implemented and through carefully thought out experiments. The theory is important too, becuase it's somewhat true that it's easy to "fake" the experiment part; that is, it's easy to find some experiment that makes your algorithm look good, so theory is needed to argue that the experiment wasn't a set up or a fluke. To throw in another analogy, artificial intelligence is to writing code as chemistry is to mixing chemicals.

Share this post


Link to post
Share on other sites
this is a sample of code

Point CreateSphere(double radius,unsigned int st,unsigned int sl)
{
...

for(unsigned int a = 0; a <= st; a++)
{
for(unsigned int b = 0; b <= sl; b++)
{
vertex[a][b].x = sinevector(radius,angle*st);
vertex[a][b].y = cosinevector(sinevector(radius,angle*sl),angle*st);
vertex[a][b].z = sinevector(cosinevector(radius,angle*sl),angle*st);
}
}

...
}


Well, it's a code I use to create a sphere in OpenGL using raytracing. Its translate the formula 4*PI*radius^2, The theory and code.

Give the fish so is not the point, show a rod to a man and he learns as himself how to do one. Better, Worst, don't matter. What matter is he does it.

If one reads it, and don't know trigonometry, can use the code above in a simple copy and paste, until see that the sinevector/cosinevector function are not provided by any engine/set of libraries, because I create it. Only theory are the key to solve this part of code, where all find that a arc sine/cosine is
equivalent to Pi/180*angle*radius.

If you give to one a piece of code and say to him "it's maybe can solve your problem", he/she will search first to understand the code before use it, or surely the program just crash or will be full of bugs. Theory and code are smashed togheter in brain, and itself returns to you a full useable new code, associating each line of theory with each line of code.

It's not subestimating anyone, all are potential genius since the brain have same structure to all people. Contact with things are the special diferences with a full genius and a full amoeba.

IMPROVEMENT is the key. What I do with code above, since I was not interested in noisy? Maybe if it's useable to me, but I will discover it by research, right? The point is, understand theory, understand code, use code, modify code with need, re-write code, and finally this code desapear with magic as a final result. Understand? It's not a contest, it's life. But life is contest also. If you aren't the fittest, you are extinct.

Theory, especially with artificial intelligence, are not mathemathic, are psychology. Hard to do, inexact, full of possibilities. To me, trigonometry is to draw circles and squares. Now, understand how fear, rage, and other N-factors ages over a single question that you do for other people and the responses that it can result is to let any other crazy. When you begin to walk, the fear on your mind make you calculate each step. With time and pratice, you walk automatically and as a wrong step you fall. It's the dinamic.

Really six months are not sufficient to learn all C++ stuff. Because this I need samples, to understand things that I don't know.

I really happy with range of replies that this topic goes. Forums are this. If you are a opinion about this, post it. If you can help, post it. I and others really thanks for it. Beginners will thanks especially.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:
Original post by DarkThrone
Theory, especially with artificial intelligence, are not mathemathic, are psychology. Hard to do, inexact, full of possibilities.


I completely disagree with this. Although some artificial intelligence methods are inspired by psychology, the theory behind artificial intelligence is very mathematical. Training a neural network with backpropagation, for example, is just performing gradient descent on a error function. The update rule for neural network weights is just an application of the chain rule from calculus. A lot of the new machine learning research is based on probability and statistics. For example, markov chains, bayesian networks, monte carlo methods--these are all things that mathematicians knew about long before AI researchers. Outside of machine learning, a lot of natural language processing and good ol fashioned AI is based on theory from formal grammars and formal logic that have a basis in discrete math.

I think with more complicated algorithms and models it gets much harder to figure out the theory from the code. Here's some of my code from an AI related project; this implements a well known algorithm:


int stateCount = process.getStateCount();
int actionCount = process.getActionCount();
double[] values = new double[stateCount];
boolean valuesChanged = false;
do {
valuesChanged = false;
for (int i = 0; i TOLERANCE) {
valuesChanged = true;
}
values[i] = val;
}
} while (valuesChanged);
int changed = 0;
for (int i = 0; i maxActionVal) {
maxActionVal = actionVal;
maxAction = a;
}
}
if (policy.getAction(i) != maxAction) {
changed++;
}
policy.setAction(i, maxAction);
}
return changed;

Even though I've named the variables nicely and written things as clearly as I can, without the corresponding theory I would have an extremely difficult time figuring out what is going on here. More importantly, I would have an extremely difficult time figuring out why this code works and when I should use it over some other code that implements a competing algorithm (which there are many in this case).

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I've somehow mangled the code, here is a second try:

int stateCount = process.getStateCount();
int actionCount = process.getActionCount();
double[] values = new double[stateCount];
boolean valuesChanged = false;
do {
valuesChanged = false;
for (int i = 0; i < stateCount; i++) {
int action = policy.getAction(i);
double actionVal = 0;
for (int j = 0; j < stateCount; j++) {
actionVal += process.transitionProbability(i, j, action)
* values[j];
}
double val = process.reward(i, action) + gamma * actionVal;
if (Math.abs(values[i] - val) > TOLERANCE) {
valuesChanged = true;
}
values[i] = val;
}
} while (valuesChanged);
int changed = 0;
for (int i = 0; i < stateCount; i++) {
double maxActionVal = 0;
int maxAction = 0;
for (int a = 0; a < actionCount; a++) {
double actionVal = 0;
for (int j = 0; j < stateCount; j ++) {
actionVal += process.transitionProbability(i, j, a)
* values[j];
}
actionVal = process.reward(i, a) + gamma * actionVal;
if (actionVal > maxActionVal) {
maxActionVal = actionVal;
maxAction = a;
}
}
if (policy.getAction(i) != maxAction) {
changed++;
}
policy.setAction(i, maxAction);
}
return changed;


The plus plus's seem to be disappearing, but you get the idea.

Share this post


Link to post
Share on other sites
If IA is mathemathical, give me the magical formula of a dream. Or to be more simple, give me the formula that calculates the sensation when you awakes and acidentally smash the finger of your foot in the edge of the door.

About Theory and Code, I was not being as explicit in my posts, I think so. I say that "Theory Was Important TOO.". Just code was be a shit if you don't know what it does ( I have THOUSAND of this stuff, nothing useable to me. ) as the case of noisy simulation. But code is so important to you understand MORE FAST the theory. Teach anyone to resolve a serie of problems jsut explaining how do in a techinical language and you give a 70/30 fails until he/she really understand it. Teach anyone to resolve a serie of problems giving the proper result in the first and as magic, he/she inherit it as water, giving you 0/100 fails with sure.

The code given was so interesting. I was figuring that "process" is a class, right? policy is also a class, and both are used to make the function. Really, before this point, I don't know what I use with this. But the dinamyc of the code is simple. policy is a object, process the iteration. to each transition for process, a new result is compared and calculated using policy and so well.

The question is ( now above the theory, even I say and repeat, if a understandable one ): Policy is needed? It haves really the full needed methods?
Uses efficiently this? Understand? it's code without theory.

At other hand, some theory are just needed with a full mathemathical PhD. 20 years after, the work of your life is shit close to a enterprise 10000 employers similar project. It's theory without code.

Life is mathemathical, dear friend. But mathemathical formulas don't are the key to IA. Dreams are ramdom pieces of foms, sounds, color and facts, that are just recorded in your mind, even if you don't know. You can dream with a woman that you can swear and take off your eyes that you never seen, but You see her, maybe at glance, when you take a bus to go home. Brain is so powerful, the power isn't know why Ideology is not strong at level of control it. You can't for yourself, but your brain can. Understand it? First, to build a dream, you need material. If you create a interative world that your object have contact with others, ALL iterations have to be recorded. But not all are useable, so the brain solve this in a single "acelerate your most useable thinks". So if you understand how the brain record this, analysis this, give priority to pieces of this above others, mathemathical is just a cicle of "ifs" and "fors" at end of code.

To complete, programming is hard, but if you don't like it. I can't explain, but to me programming is so easy because I do this the way to follow. I just love it, as a son. I was sad with fails, glad with sucess. Each key pressed is hope, and this is the heart of programmer. If you spend time on programming, jump out. If you dedicate time to programming, you will be a master, don't matter how. This is the SURVIVE-OF-FITTEST, a natural law that moves the world.


[Edited by - DarkThrone on June 13, 2005 9:40:29 PM]

Share this post


Link to post
Share on other sites
Quote:
If IA is mathemathical, give me the magical formula of a dream.


X = 7;

No really.

If this answer isn't the one you are looking for, you have not sufficiently well defined the word "dream".

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
If IA is mathemathical, give me the magical formula of a dream. Or to be more simple, give me the formula that calculates the sensation when you awakes and acidentally smash the finger of your foot in the edge of the door.


That's quite interesting. Have you seen or read the results of dream research? Well, the most promising results show that dreams are actually the results of random neuron firing, which is just a series of random images, color, or memory or whatever. The pieces of information used in a dream are both conscious and subconscious. The average person remembers more things than they consciously know. So, the people with photographic memories are just special in the sense that they know how to access the memories they've gained subconsciously. So, back to the point. They found that dreams are inherently random. However, since our brains aren't very good at dealing with pure randomness, the first instinct is to try to make sense of it. So, when we are dreaming, our brain is rapidly processing random information and trying to make sense of them, which sometimes is not possible. This result comes from the fact that experiments show that people who have just woken from a dream state are actually more competent at finding correlations between random things, than a person who has awoken from a deep sleep state or a fully awake person. So, that's why sometimes dreams tend to "jump" around. So, the process of finding a commonalities and trying to interpret random data is pretty much statistical regression. So, mathematically, the brain is performing multi-dimensional statistical regression to try and create order from the randomness that it is given.

SO, we can pretty much model a dream as a series of random information that gets thrown from anywhere in our memory into our cognitive processing unit, which then tries to run a multi-dimensional regression or ordering algorithm on the data to try and discover commonalities and trends in the data. Thus, our dreams then get pieces of story line as the random information gets merged with seemingly "related" information that the cognitive unit can call up at the time. Thus creating continuity. So, after performing regression, a multi-dimensional curve fitting interpolation is performed.

That, in result, gives you your dream.

As for waking up, its equivalent to all your senses being rewired and starting up at some random initial value. Usually when you wake up, your sensory sensitivity is higher than usual, so, and pain sensation is a little heightened. However, since there is still some internal chaos with the consciousness, the sensory input will be delayed, due to the processing of other tasks. Somewhat like sensory overload due to network congestion. Too much information, too little processing time, causing latency and flooding. So, I guess, mathematically, it becomes a probabilistic network congestion simulation model.

The thing is, as long as you can slap a numerical value onto something, you can pretty much explain it or map it to some mathematical model. Physicists will tell you that one of the beauties of nature is the fact the all phenomenon can be broken down to simplistic formulas. Whether or not the average Joe will understand the formula is a different thing.

Share this post


Link to post
Share on other sites
x = 7 is so great. I use it and now my machine can think, dream and solve the problem for dominate the world. Thanks.

Without sarcasm, I'm not questioning the DYNAMIC of a thing. A car is based in physic, with VELOCITY, TORQUE, RPM values. But a engine is built by MECHANICS, not PHYSIC. Even Mechanics uses Physics, it's relative to Mechanics the Physic formula used.

The problem is the theory, in some parts, show you anything so complex that you need a full mathemathical course rather than code. So, you finally know that this damned formula is more simple than 1+1. If in same theory, a simple step-by-step by example will teach you by association what that means.

Seems that I and Weirdofu agree with dream dynamic, but that's not the point. Since the base is psychology, first we have to gave a full structure of storage and manipulation sufficient efficient to dynamic runs out of errors. If you don't, you will seek and modify the dynamic code ( the mathemathical part ) to try repair a error that don't be there. Even you can sucess, it's not perfect, and in a point or another it fails. If you build a clear base, dynamic adjustements just enhance the project instead. That's the concept. The machine knows nothing, just you can teach it. If you are a good teacher, if will be a good program.

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
If IA is mathemathical, give me the magical formula of a dream. Or to be more simple, give me the formula that calculates the sensation when you awakes and acidentally smash the finger of your foot in the edge of the door.

Since such an AI does not exist, there are obviously no models for its creation. Maybe you meant "show me the math equations behind actual intelligence", and if that is the case everyone is looking. That is part of why everyone talks about theory, because AI is still very much a field of research. Like everyone has already said, for most purposes the code is the easy part.

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
x = 7 is so great. I use it and now my machine can think, dream and solve the problem for dominate the world. Thanks.

Without sarcasm, I'm not questioning the DYNAMIC of a thing. A car is based in physic, with VELOCITY, TORQUE, RPM values. But a engine is built by MECHANICS, not PHYSIC. Even Mechanics uses Physics, it's relative to Mechanics the Physic formula used.

The problem is the theory, in some parts, show you anything so complex that you need a full mathemathical course rather than code. So, you finally know that this damned formula is more simple than 1+1. If in same theory, a simple step-by-step by example will teach you by association what that means.


Well, I'm an academic, so to a certain extent, I guess I value theory higher than code. My advisor once warned me that as long as I played only with code, I'd be just like any hacker that comes a dime a dozen. And I guess to a certain extent, one of the main reason I don't like giving out code is just that I don't want people falling into the same trap I stepped into. You can only build so much on what other people have made. A person can give you a recipe for a sponge cake, and all you'll ever be able to make would be variations of that. You can take apart the engine of a car, an gasoline engine, let's say V6, and modify it anyway you want, but chances are, you won't be able to build a Diesel engine.

Also, there's the effort factor. Somebody may have poured over the theory for hours or days to come up with the code, and they just don't feel that someone else should get it for free without going through the same effort. Its almost a pride thing. Personally, as a programmer, I believe that you never really learn anything until you build it yourself.

Quote:

Seems that I and Weirdofu agree with dream dynamic, but that's not the point. Since the base is psychology, first we have to gave a full structure of storage and manipulation sufficient efficient to dynamic runs out of errors. If you don't, you will seek and modify the dynamic code ( the mathemathical part ) to try repair a error that don't be there. Even you can sucess, it's not perfect, and in a point or another it fails. If you build a clear base, dynamic adjustements just enhance the project instead. That's the concept. The machine knows nothing, just you can teach it. If you are a good teacher, if will be a good program.


True for most solutions in the world and true for AI almost always, the Occam's Razor. In AI, sometimes and many times, things are ALOT simpler than you think. The question is rather, how do I break things down and simplify things to the extreme. Then, there is the issue of identifying, what is hard-wired and what is emergent. Alot of human behavior aren't hardwired or hardcoded, but rather by products of the original code. The original programmer may have no idea such results may occur, but it just does. And it is true that the machine knows nothing, but you shouldn't draw strict lines for it either. Even good teachers can't create good programs if the students are bad. :p

Share this post


Link to post
Share on other sites
The Occam's Razor is a fake to a single that figures "The Lord of True". Into all possibilities, all are true as possibilities. Try each one is the game. Fail, fail and fail until find the right. Into all possibilities in programming a artificial intelligence, The Occam's Razor favorite is lemmon... just kidding.
Take serious, it's the "Ah, I never can make it. Is best sleep in my bed.". If you use the Occam's Razor at way-of-life, you are not a programmer.

The reason that I program that why I love it. Don't matter if my journey is faded to mess, it's what I want. Will Power is the first thing to survive, the key of life. Occam's Razor is the easy way to solve a problem.

Piece-by-piece I was finding that I need to build a dream. If this dream are what I search, I don't know. But it's the point. I take the same key, theory and code are both necessary to learn. If I want copy-and-paste, I will ask "Please, someone can help me because I'm a noob and want some copy-and-paste codes to make anything with sure will be a shit when I end."

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
If IA is mathemathical, give me the magical formula of a dream. Or to be more simple, give me the formula that calculates the sensation when you awakes and acidentally smash the finger of your foot in the edge of the door.


Or perhaps, you could explain why dreams and sensations have anything to do with intelligence. They certainly have something to do with pschology, but only insofar as they help to define the 'human condition', which we have come to realise in the last century should probably be called the 'mammalian condition'. I doubt very much that insects dream (why would they need to... but it'd be an interesting universe in which they did!), but I certainly know of examples of intelligent insects. Or perhaps I should say, "insects that solve problems 'intelligently'"!

I find it disheartening when I read what some people write about learning new skills; that if someone would just show them the end result, they would be able to work it out for themselves. Learning is a process, not a result. Learning is about discovering 'how' to achieve something, not simply defining 'what' to achieve. If someone provides the answer for you, then you didn't learn anything... and I can guarantee that you'll expend more energy trying to unravel it by yourself than asking someone who already understands to explain it.

Having said that, I completely agree with ApochPiQ's comments; people become jaded with the online community. I'm a good example of that. When I first starting helping on this site I used to provide answers to many questions on a daily basis. I would write long, detailed explanations of techniques, provide algorithms for methods and sometimes even pseudo-code, so that people had most of the answer to their question. Understanding was provided, it just required implementation. After a few years though, I noticed that most people, especially beginners, didn't really want to know the latest, greatest (or best) AI technique for solving their problem. What they really wanted was for it to be already solved. Those that wanted to know how to solve something would just ask to be pointed to an appropriate resource. Today, I spend far less time in these forums. Partly because I now have many more committments for my time (work, family, friends, etc), but mostly because I've been around this block many times before. I'm certainly not going to do other peoples work for them, nor am I going to give them code that represents days, months and sometimes years of work by other people. I'm all for sharing knowledge about how to achieve something, but I don't support giving away peoples work (nor do I support breach of copyright). Hence, I don't provide code. If you're a competent programmer, you'll have no problems implementing an algorithm. If you're not a competent programmer, you shouldn't be training yourself on AI problems. That might sound harsh, but it's a fact of life.

Remember one thing as you go through life: understanding, not a collection of facts, is the true path to wisdom and knowledge.

Cheers,

Timkin

Share this post


Link to post
Share on other sites
ufff... is so long topic, isn't it. Big, full of post, the great thing. I really love a post with much replies, show me that someone really matter.

If is general opinion about all, I really give up to try. Maybe all are right, but it's so frustrating, because I really figure that things don't was so.

I was recently seeing the forums and see very topics about the same thing, pathfinders, ANNs, genetic algorithm. Not really a single topic talking about fundamentals of human intelligence, oppinions, view points.

Maybe this topic really changes of your first point. I ask to a difficulty in search for results, and give me my view point of it. All reply and gave the view point of them. The discussion changes so for PHYLOSOPHY X MATHEMATICAL on IA implementation. It's so interesting. A real talk, it changes based in a query and most probably changes again when a new question is up.

I was thinking. The code really is not the secret to me. Some parts, for other side, is a big hole when I try to figure how I say to machine what I want to say. It maybe happen to you too, before 10~12 hours in front of a computer, thinking and doing all work.

Other day, I was looking for the life to try escape of this thing. See people with your problems, people sad, people happy, etc. So I understand.

The first step, the man can conquer a thing. He want, he do. Your objective it's your life. All impulses are turned to it, and max of your possibilities are to take it. He changes, abdicates, do all because it is the most important thing of the world and he does everything to do. This is the resume of my view point that was the WILL POWER.

All of us have the same WILL POWER. Some uses all targetting a single objective. Others divide it along very small objectives. But ever it's the same. If you figure that isn't true, look anyone that seems not will-determined and see that he dedicatates to small things a little. Look for a depressive and see that he's fight with himself because a wish ( don't matter which ) is so important to this that the single idea of fail have him sick.

It's not a critical for everyone, please. It's a view point that I use to base my IA implementation. Maybe the view point of mine is useful for any that will think in a will power implemetation ( maybe a motivation engine ).

If any want to share view points, feel at home.

Ah, a man is what a man knows. You knows, understand and wisdomly uses that.

And dreams are so important. Human beings are great creatures, with mental capabilities above all other living beings.
But this capabilities are based in a sense that a power flux that will be hard to control. Dreams are some a chamber in sections of tube, where this flux roll some times to less velocity and don't destroy the tubes on a curve. It happens to me. Magically, a answer for a problem just "light" on your head some months after, even that you can't think on it anymore. The brain uses all info and associate it. All living beings do so. Dreams are to complete the table, on spaces that things that never exists can be made.

Share this post


Link to post
Share on other sites
Quote:
Original post by DarkThrone
The Occam's Razor is a fake to a single that figures "The Lord of True". Into all possibilities, all are true as possibilities. Try each one is the game. Fail, fail and fail until find the right. Into all possibilities in programming a artificial intelligence, The Occam's Razor favorite is lemmon... just kidding.
Take serious, it's the "Ah, I never can make it. Is best sleep in my bed.". If you use the Occam's Razor at way-of-life, you are not a programmer.


Well, for starters, I don't think you understand the concept behind Occam's Razor. As a programmer, you need to use it all the time.

Occam's Razor - "one should not increase, beyond what is necessary, the number of entities required to explain anything", "one should not make more assumptions than the minimum needed"

You can read more here if you want. http://pespmc1.vub.ac.be/OCCAMRAZ.html

Thank you Timkin for the enlightening post. And as we are really diverging from the original topic, I do feel that what can be said and should be said about the original post has be stated.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this