|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
Re: Can I Make Something Clear?
Quote:
|
|
#2
|
|||||
|
|||||
|
Re: Can I Make Something Clear?
1. No matter how much you think you won't learn anything, you will still learn a lot by integrating a library, especially larger ones like libIrrlicht you mentioned earlier.
2. Why not start with semi-autonomous. Get the basic routines down, starting with position sensing, and generating autonomous paths on-the-fly and following them. If you can get it to do that, that would be a stepping stone to your goal. If you just say "i'm gonna go write AI just like that" you will never get there. You won't. You need to start with more basic things and work up to that level of autonomy. I understand where you are coming from and your motivation to jump into autonomous programming. I learned that it is easier to not jump straight in, but to write software to get you a step closer there, and eventually you will make it. For you, you would need to get closed-loop control on everything, then follow your path, then generate the path to follow on the robot-end, then write game-piece finding code, etc... It's more work then you expect. You may be surprised just how long it will take you to get to a point where you have a robot that can go to (x,y) on command, just getting it to go there and avoid fixed field elements like bumps or the rack from 07, etc. |
|
#3
|
||||
|
||||
|
Re: Can I Make Something Clear?
Our team programmer before he graduated suggested we made a robot that would operate on it's own will power and do whatever it thought was correct. Basically whatever he wrote the code to do. So if it were kick the closest ball, it would do that. But the robot would remember what it did, and he had 2 buttons for it. A "No/Bad Robot" button to tell it that what it did was not good and it should not do that again. And if we pressed that one too many times, he figured the robot would sit there and twitch, unwilling to do anything afraid of being reprimanded, so he suggested a "Self-Esteem" button.
I found it funny how people in this thread were talking about AIs and robots with Moods while our programmer thought that a few years back. Just something to think about |
|
#4
|
|||
|
|||
|
Re: Can I Make Something Clear?
Quote:
Thats funny, kind of like a dog... but eh, I don't like copying ideas so I won't do that |
|
#5
|
|||
|
|||
|
Re: Can I Make Something Clear?
Quote:
. |
|
#6
|
||||
|
||||
|
Re: Can I Make Something Clear?
When you've succeeded?
![]() Seriously, Success is defined by the individual. I define success by the accomplishments of the students and how motivated/inspired they become. They probably view success a bit more on win/loss, but the 2 definitions are not mutually exclusive. Success is indeed in the journey, not in the destination because 'How you get there is more important than getting there'. IMHO |
|
#7
|
||||
|
||||
|
Re: Can I Make Something Clear?
Quote:
First of all, FIRST is about teaching practical lessons that you can use to drive the future. You'll find that this "builds character" bit doesn't exist in the professional world. Business respects results. If your co-worker (let's call him Bob) can code something in half or even a quarter of the time you can because he used a library or something higher-level than you, your boss won't care if you are "building more character" than Bob by doing it from scratch. Bob will get the contract/raise/promotion every time. Why? Results matter, and time is money. You don't just have to work hard, you have to work smart. Secondly, doing everything from scratch is just masochistic. This is coming from someone who used to be like you - I used to want to do everything from scratch - I was convinced my "from scratch" code would run faster and better than any library I found. But re-inventing the wheel every time has a serious cost. Try to do anything significant without a library and you'll spend ludicrous amounts of time just getting to the point where you've re-coded what the library does and are actually ready to begin what you set out to do in the first place. I decided a few months back that I wanted to make a video game, and decided first that I'd make my own DirectX engine. Luckily, a friend of mine, who is a professional game developer, stopped me ahead of time and told me that if I wanted to make an engine, I should make an engine, but if I wanted to make a game in any useful amount of time I should use a pre-existing game engine. I went with Irrlicht, and things have been going great ever since. You know what, though? Even with an engine, you have a lot of coding to do. Thousands and thousands of lines. Your proposed AI project will be no different - coding anything useful takes a lot of code. Have you ever looked at the source of a game engine? Open up the Irrlicht source and you'll find thousands upon thousands of lines. Why would you put that additional burden on yourself? As elitist as we programmers like to be, good libraries and engines are well-thought out and coded for the most part, and you're a fool if you don't take advantage of all the painstaking work someone's already done to help you. There's a reason professional 3D graphics and audio engines are valued at thousands of dollars per license - if they weren't that valuable to other developers, they wouldn't sell at that high of a price. Your response to this over and over, David, has been that you want to do these things for your education. Look at the posts in this thread. There are professional engineers and mentors from all over the country trying to save you from yourself. We're not trying to discourage you - we're trying to help you and teach you a very valuable lesson. Most of us have been down this road before. I've had to learn the hard way why to use pre-existing code when I became overwhelmed several thousand lines into a project. I was convinced I could make a better MFC. You don't realize the enormity of a project until you really start coding.My code mentors once told me, "A good programmer can look at a library, decide he hates how it's implemented, and re-code everything from scratch. A really good programmer can look at a library, decide he hates how it's implemented, but realize the time it will save him and learn to use it." Last edited by slavik262 : 20-05-2010 at 14:59. |
|
#8
|
|||||
|
|||||
|
Re: Can I Make Something Clear?
David,
If you truly want to build from scratch, then that means that you will need to develop your own programming language. Every time you use C++ or any other language, you're putting pieces together that have already been made for you. (Similarly, building a robot completely from scratch means going at least to the ore, if not digging out the ore.) ![]() You want to further your education. But with the grades that you posted in another thread, I would suggest concentrating on your schoolwork and furthering your education in your free time. You have your whole life to learn to build libraries from nothing. But at this time, you have better things to do. Use the libraries. Then go back after you're out of high school (and maybe college) and rewrite them from scratch. If you haven't already done so in a class, of course. Maybe you'll figure out that not using them was a mistake at some point... |
|
#9
|
|||
|
|||
|
Re: Can I Make Something Clear?
My only real response to the first thread, and now this one is:
Why? You have a very, very, very, very, very, very and let me add very limited sensor and compute base on a FIRST bot. After seeing the GATech Darpa Urban Challenge bot at Championships, I can't even imagine thinking about making something that has to be able to do more than just drive with 1/100th of that hardware. I saw the postulates about putting the PS3 on the bot, and even then it would be ridiculously underpowered and still illegal. If you want to learn to program, learn to program; It's a useful skill and will be helpful in your future. Also helpful is being able to tell when an idea is unrealistic or unachievable. |
|
#10
|
|||
|
|||
|
Re: Can I Make Something Clear?
I'm sure I will get criticized for killing dreams and hampering progress. I'm sure that to some this is also not in the spirit of first. I hope someone else has said it and I just missed it, but
creating a fully autonomous robot is STUPID. There is NO WAY you will ever program a first robot to be smarter than the average human, and I would assume teams don't have their below average students driving. The game has too many variables to consider, and if you think you won't forget something or miss some scenario then you are very arrogant. Automating some tasks can be helpful. In autonomous try whatever you want. But in teleoperated with identical machines, I guarantee you that I beat any full auto bot 1 on 1 at least 95% of the time. (5% for the time to account for the time I get stung by a killer bee and pass out) For educational purposes, I personally think you're wasting your time but its your time to waste., If however, you honestly think you will get a full auto bot to out perform a human then you are either very arrogant, or very stupid. (or the human is comatose) Criticize me if you want but those are the facts, and I know for a fact that other people that have read this have thought the same thing. |
|
#11
|
|||||
|
|||||
|
Re: Can I Make Something Clear?
Quote:
|
|
#12
|
|||
|
|||
|
Re: Can I Make Something Clear?
I have everyone's comments, I thank you for your input(s), first of all, yes, I do need to get my grades up, my mom just scolded my like 10 minutes ago after she saw the progress report... You know how Asian moms are. Like what Slavik said, irrlicht is just a 3d engine, so does nothing else for you, so obviously it would take tons of code. The main problem is my ego/pride, I know all of you can see it. My only goal here is to just let the robot do it's job, I really don't care if we win or lose, as long as it does it's job, I am happy. Sure many of my teammates might disagree if I officially declare it next year that I have been working on code for a fully autonomous robot, but is it really abour winning and losing? When it comes to focusing on winning, things get ugly FAST. I know it, Im in football, they are the biggest and meanest people on the field. LOL
|
|
#13
|
||||
|
||||
|
Re: Can I Make Something Clear?
Quote:
|
|
#14
|
||||
|
||||
|
Re: Can I Make Something Clear?
Quote:
|
|
#15
|
|||||
|
|||||
|
Re: Can I Make Something Clear?
Under the 2010 rules, it was legal if it was publicly available. So all he has to do is to post it on his team's website (or on CD or some other similar place) and it's legal, assuming that that rule stays the same for 2011.
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Can you add something to the spell checker? | devicenull | CD Forum Support | 79 | 07-11-2006 10:35 |
| Anyone ever make something rideable (go-kart/scooter/misc.) from the Kit Of Parts? | Elgin Clock | Technical Discussion | 9 | 29-07-2004 22:09 |
| Can we make a general science forum? | Adam Y. | CD Forum Support | 7 | 27-12-2002 19:23 |
| How can we make this better? | archiver | 1999 | 6 | 23-06-2002 22:39 |
| Can someone clear up please? | archiver | 2000 | 1 | 23-06-2002 22:23 |