Author
Topic: Artificial Intelligence (Read 7825 times)

I am incredibly intersted in the development of Artificial Intelligence. Construction of normal robots comes easy to me, along with the programming. Right now, I'm fighting with the development of my ideas. I'm pretty sure I have all of Artificial Intelligence broken down.

I am planning to construct an animal-like robot. It will have a variety of sensors and such that allow it to immitate a rodent animal. The sensors will run through their own processor in order to interpret everything that come to it, and that information will be fed to a central processor. If power is an issue, I can hook up several sensors and such to one processor, which it will probably come down to. A central processor will interpret everything that inputs from sensors and such. After interpreting it will make decisions.

The robot will be able to make decisions as soon as it's turned on. It will have a natural curiosity to roam. This is extremely extremly vague. I have a full document on ideas on my PDA.

I was just wondering if anyone else had interests or ideas they would like to discuss. The robot is there. I am wanting to converse about the programming needed to obtain a level of "intelligence". This is open to anything.

First off, I'm not going for the robot portion of it. I'm going for the implementaion of Artificial Intelligence. The construction of the robot is least of my worries.

Anyway. The robot is preprogrammed with as little as possible. I call them instincts. It monitors its batter power, touch sensors (emulating skin), etc. When the robot is turned on, I intend for it to start in a state of homeostasis or all of its parts are at equilibrium. It has natural curiosity so it roams. The roaming portion is taken as moving to the closest object of interst. At the object, it will determine if the object is at all usefull by using its outputs on it. It is constantly logging this, which is a reason I intend for it to have an onboard computer, or perhaps connection via Bluetooth.

If something triggers something, or puts the robot at risk of extinction, it will do something. To break it down, here's my intended logic process.

-Stimulus-What do I do about that?-Decide if there is a positive/negative connotation-What will I do about it? <<<<-Perform Action- ^-Log- >>>>>>Failed>>>>>>-Continue-

The robot copes with a stimulus, and as a result of the logging... It learns. The positive/negative connotation is a sense of the stimulus being beneficial or not towards the robot's existence. It is able to date back to these logs to determine wither it should use something again or not. By repeating this, it will create processes for itself.

I want to construct this, so you can put it in the middle of a field with a power source nearby, and it will start from nothing to being able to explore and create its own environment. It will be very... animal-like. Thus how I based the robot.

Yeap, it sounds very interesting. My suggestion: code the instincts and all that in simulation first, with a simulated agent and world, so that you can actually see what the robot "should" be doing, without worrying about how to make the robot do what it should.

Also, the logging from experience and learning from it is great, and doing it to make sure it works in simulation first would be extremely helpful I think. Stuff like determining positive/negative connotations, and how to choose among various things of interest.

Like for example if there's a ball, and the robot walks to it and pushes it, but it doesn't really affect the robot's existence directly, would that be positive or negative?

And, what if the world was set up so that a chain of events have to occur before something good happens? Like the robot has to push the ball, then roll over a button, before the energy station (the place it gets battery juice) switches on. How would the robot figure that out?

These would be the kind of questions you would have to solve, if you haven't already, and probably test in simulation of some sort before running it on the robot.

Well, the robot will not actually think of getting past the obstacles at first. I guess it's developing from a child. It should go from point of interest to point of interest experimenting with that object. If the object is determined to be irrelevant, it will log that and its image and it will not continue to travel to it. I guess it will be very stupid at first, but the intelligent part will be, it will learn. It wont do anything like that to get around the ball due to the fact that it would have to do it to every object. At this point, it would spend countless hours on a single object, rendering lost time.

Determining if something is positive or negative... The actual decision will be made +/- when a stimulus occurs, or a change in the constant. If something hits it, it will decide if it's a negative or a positive thing. Most likely negative.

I am interested in simulations. I have no doubt it will work, at least it makes sense to me. You may be a bit weary. I'll explain later

Well I think someone mentioned some robotic development studios in another thread, I don't remember the details, but you might be able to find it on the forum. I believe they allow simulation and all that, but I'm not very sure cos I've not used them.

If you're just testing the behaviors and that kind of higher-level stuff, you can probably code your own simulator of sorts. Just have an agent object, with the relevant (position, orientation, other things) as the state, and a loop that updates the state as it "explores" the simulated world and interacts with it and learns, and tells the agent the events that occur, like a touch sensor being activated etc.

For the first step, just creating simulated events like touching a ball, or seeing one for that matter, should be sufficient to get started, before you'll need a full-fledged simulator that has a proper world and stuff in it. Just observing the agent's state and well as the robot's "mind" will be a big help in the development I feel, even without a proper simulator at first.

Anyone have any constructive criticism or anything? I have a feeling my idea is pretty well-developed, but I don't think it's flawless. It seems to make sense as something is to learn on its own. It takes a step away from collective learning and such, I am hoping to be able to develop it so it starts thinking on the lines of a human, but humans are animal at heart, so I have to start there.

If you think you have it all figured out on your own, that's nice, but might consider looking at the work of others who have made real progress in this field. You might start here with the interview of Jun Tani on "Talking Robots" - http://lis.epfl.ch/podcast - he's been working on this problem for the past 15 years, and has a good understanding of the challenges.

I'd rather stay away from other peoples work, so I can be more origional. Perhaps if the code for their robots is displayed, I may. I'm trying to create a child basically. If there are people who had the same idea as me... Please tell.

Other than that, I intend to construct it on my own. I may take a robot design from other people or such, but in terms of the robot's thought process, I intend to work that out on my own.

You may find this immature, but that's find. I'm 16 and I'm going to create my rendition of Artificial Intelligence. Only bad thing....... I have 50$

I'm open to funding

Maybe Batelle will let me use the chassis they made me work on. That would be neat, but they want their stupid medical delivery robot. I can't wait until I can start programming and calibrating

I'd rather stay away from other peoples work, so I can be more origional. Perhaps if the code for their robots is displayed, I may. I'm trying to create a child basically. If there are people who had the same idea as me... Please tell.

If you don't search for what's been done, you're practically guaranteed to reinvent the wheel. I've seen variations of this idea pop up in several places. To really do something original, you need to be familiar with the literature.

Quote

Other than that, I intend to construct it on my own. I may take a robot design from other people or such, but in terms of the robot's thought process, I intend to work that out on my own.

Good for you (said not unkindly). Too many people come to this forum and ask us to build a robot for them.

Quote

You may find this immature, but that's find. I'm 16 and I'm going to create my rendition of Artificial Intelligence. Only bad thing....... I have 50$

I'm open to funding

Maybe Batelle will let me use the chassis they made me work on. That would be neat, but they want their stupid medical delivery robot. I can't wait until I can start programming and calibrating

$50 won't come even close to what you want to do, which I'm sure you've realized. Perhaps you could start with a simpler bot, and in time save the money you'd need for your more ambitious projects.

Logged

There are 10 kinds of people in this world: those who can read binary, and those who can't.

I'm actually looking for a virtual robot thing. Someone mentioned it, but I don't know where to get one.

I was hoping to sketch the robot on some program and inputting programs and such for it and observing it.

I understand what you mean by reinventing the wheel. I would obviously look... Eh, guess I don't know what I was talking about. Was a bit hyper then. I guess I sort of meant that I don't want to conform my project to others. I'd like to stick to my project, but I should see if anything like this has been done before. I hope not

Yeah, in no way do I want people to build it for me, maybe if I have questions. I probably will have plenty. I can program, I can build chassis, but I'm not too good with schematic building. If I saw one, I could tell you how it works, but not build one.

http://laral.istc.cnr.it/evorobot/ - you will find a large amount of information here on the use of genetic algorithms for evolution of robot behavior. The software used in the book "Evolutionary Robotics" is called "evorobot" and is available for free download - it includes a simulator

http://www.cyberbotics.com - look at the Webots software. it is a simulator, and is used in a lot of projects involving genetic algorithms. The author of the software received a PhD in studies of genetic algorithms

One of the tennets of Software Engineering, and therefor Artificial Intelligence, Is proper application of old Ideas.I'm sure you have lots of your own Ideas, but studying until you can boil down the problem to it's separate parts is what I reccomend. Down load any and every academic paper you can get your hands on and read, read, reread, implement,and evaluate. After all that knowledge digests you can build off of it.

I'm not saying you should drop your ideas, but with your lofty goals you are going to have to use a lot of techniques and learna lot about the different kinds of approaches to apply your ideas.

Just for example:I hope you have heard of SQL because you are probably going to want to use it to create your database of logic. Also you might want to study Fuzzy Logic, or Statistical AI to help your robot decide what is 'good' and 'bad' compared to this database. Then you may want to employ some kind of genetic algorithm to alter the performance evaluation of the AI to helpit learn and alter the SQL data base.

These are all different subjects that have been studied in AI but that can be brought together. Most nontrivial Agents (AI programs) are an amalgamation of previous AI concepts.....

Well, this is what I'm looking for. That's why I don't plan on actually building it right now

I'm just looking for a good start from some people who went through or are in college. (Dang them, why can't I be in college by now... I have good enough grades) I'm open to all sorts of information, I just want to stick to my idea. I have heard of Fuzzy Logic and SQL. I'm know Fuzzy pretty well, not SQL. They're worth looking into. If you have anything else, I'm willing to listen. I'd pay more than $1.09 for good information. I'll give you $50 if you give me all the information to read

If you have anything else, I'm willing to listen. I'm putting all this in my PDA.

Well, I was just making a reference to people that know more than me. I'll probably be no different.

You said 'less dynamic learning', I imply that you're working on a project yourself. I'm interested, care to explain?

My mom seems to know something about SQL, but I'll take a look on the online thing. Parents tend to know older stuff. My dad doesn't even know programming, and he could probably answer anyone's questions on electronics here. My father took Basic his senior year in college when it finally came out O_o

Well thanks for your help. If you have anything else, I'll take it. I'd love to discuss your ideas. If you'd like some other ideas, I might be able to help.

My main area of intrest is non-holonomic robots, local path planing, and global maping/pathfinding.Later I plan to work on making the robot work better in a dynamic multiagent system, IE driving down the side walk, encountering a person walking by and not mapping that person to the environment. I'd like to go into machine vission a little bit, and then I would work on ingegrated agent robot(two agents: gunner and driver independent but communicating). Then I would work on recognizing friend from foe. at which point I would make 1000's of said robot and devide them into two teams, implement a genetic algorithm and see which side learned the most about warfare.....

Sounds awesome. Seems like an interesting idea getting it to identify targets.

That's probably the only flaw I have found in my programs. If someone walks up to the robot and beats the hell out of it, it will map where it got destroyed and the picture of the person. Then every person becomes its foe and who knows what would happen.

I just want to create a robot that learns huge amounts of things about the environment only using a couple algorithms and a pre-built instinct. Being able to survive in an environment and learn more about it would seem like the first step towards AI. Very neat idea though, except building 1000's of robots may become a bit pricy... Stupid money. A green piece of paper can hold anyone back from their dreams.

If you made something like that, I'm sure you'd end up having enough money though.

This whole concept is what the generic nerd (myself included ) thinks that robots will one day be. I have given this much thought myself. After all, OUR brains aren't magic. Our brains work because electricity bounces around and hits the right nerves. So, then, how are we born with the ability to think? What is our "source code?" Are we really subject to "if/then" statements after all. It's possible, but it doesn't seem like it. When we see a picture of a bloody murder in some horror movie, we don't compare the image to any other bloody murder we've seen and determine whether or not we should be frightened. We see it, we are frightened (I hope...). How can you simply teach a robot to have feelings? Whether someone is the happiest person on the planet, or incredibly emo, all of our actions are results of our emotions. So, simple, all you need to do is give a robot emotion. But how? It's like describing color to a blind man, music to a deaf woman. But we know that somehow, little tiny cells, the chromosomes inside, the Deoxyribonucleic Acid () is telling each cell, each bit or byte, what to do that makes us love dogs, that makes us recognize our best friends voice, which makes us take a while to remember on which street your grandparents live. The Deoxyribonucleic If/Then statements. All we have to do is turn that into C++. Easy! The key to making animals out of a microprocessor and steel is to code in the organic code of the human nervous system. The end of the lecture comes: the key to AI is a human nervous system (an imitator).That really couldn't have helped much, but it's your robot theory for the day.

It's not a solved problem, and the authors show many areas of opportunity for development of the concepts, but they are clearly on the right path. Of course, you're welcome to consider your brain as a C compiler if it makes you feel better.

Cool, much thanks. I just used wikipedia and got the basic gist from it. I'm currently trying to simulate my robot in Microsoft Robotics Studio. Do you think this is plausable? I just need to get the hang of the program.

AI isnt necessarly AI, its more of RIreverse engineered, then modifyed intelligence.

humans aspire to create minds, compainions like themselves from a language not like them selves. If you really think about it, all thought is is language. you think in words and sensory symbols

I have come to reason through this for "new" intelligence to be created, you must raise a baby intelligence to frutiation. Leaveing einstine-genius behind, something needs to be built upon. Createing a clustering of "neron like" software modules which could be "guided" in its evolution seems to be the most logically path currently. The guideing i am refering to is stepping in, acting god, and makeing change (hopefully progressively) what nanobot and i are doing in essance is looking for an expermental method which will result in this "base" languagedifficult as it is, we are certain this general path to be sound.m appologize about the rambeling, just thought i'd take a stab at explaining the physolphy behind this.

Granted, in the actual device that must be trained the base code must be new, and not based on anything "computer" which is why we have processing problems. the processor needs to itself be biological mind you in structure not necessarly composation. and by biological i mean a goal-based abstracting/randomizeing mathamatical function consisting of physical elements. that can use physical data in order to formulate new responce sets.

also, the other primary goal is "internal modeling" in which the funciton can create data internally based on experance and use that data to run internal simulations in the background to create these new idea sets.

-more on this later. gradually i hope to change my posting based on what i learn