Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Can I Make Something Clear? (http://www.chiefdelphi.com/forums/showthread.php?t=85850)

davidthefat 19-05-2010 18:03

Can I Make Something Clear?
 
Ok, first I made the Autonomous Challenge for those teams with 2+ years of programming experienced member in their team. I never meant it to be for the teams with rookie programmers, even if your team is a veteran, the veterans leave every 4 years, so not even veteran teams. I never meant it to be accessible to rookies just like that, without them actually knowing whats going on. I remember like 4 years ago, I looked at the source of AssaultCube, I was just blown away, me being 12 did not help much either. But I still had the basics of C++ under my belt. I am not trying to brag or anything, but 4 years of programming experience is not much considering the fact that there are guys with 10+ even 30+ years of experience. But the project was NEVER intended for new programmers. I like the motive of the guys behind the autonomous SDK stuff, but really, it won't help in the long run... Building things from scratch builds character.

Programming is like any other profession: the longer you do it, the better you get. I see back at my old code from when I was 12, I just facepalm my self. It is terrible... I new how to program, sure the end result worked, but the way I did it was either redundant or just plain ol' stupid.

Yes some of you more experienced guys out there might think I may be on the same boat, an autonomous robot is just way over my head. Well the end result might not get my championships, but I can say confidently that I did not touch the joystick the whole competition.


edit: I had an Algebra 2 test today, I can now say that I think too much like a programmer... I do not get enigma stuff... I think of for loops instead...

Chris is me 19-05-2010 18:14

Re: Can I Make Something Clear?
 
So on one hand, you're trying to tell programmers to be realistic about their skill sets and what they can accomplish, but in te same breath you're saying that as a student with a few years of programming experience, you can achieve what computer scientists work on for years in a 6 week build window?

I really don't like killing childhood dreams or anything like that, but let's take this year's game as an example. I'll even let you pretend you have 1114's robot so you have as much technical capability as possible. Take an empty field. There are 3 balls on it. Which one should the robot drive toward? How accurately can you get the ball's position? What if it rolls away out of camera view? Now add other robots, how do you pick the ball that is least likely to be knocked away by a defender? How do you account for the slipping of drive wheels and being pushed sideways, accurately enough that you're not at an insurmountable disadvantage to anyone with eyes?

It's an enormous task, and while taking enormous challenges is a load of fun, are you really going to suck up your team's resources, time, and effort for your own personal goal? Perhaps if you're interested in AI, you can start simpler and scale up. Making a simple 2v2 grid and turn based game of Breakaway that you could work on AI algorithms for would be very interesting, still extremely hard, and isolated from your team's on field performance. If you like sensor work, there's still autonomous mode, or you could automate portions of teleoperated play like hanging.

davidthefat 19-05-2010 18:17

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by Chris is me (Post 962932)
So on one hand, you're trying to tell programmers to be realistic about their skill sets and what they can accomplish, but in te same breath you're saying that as a student with a few years of programming experience, you can achieve what computer scientists work on for years in a 6 week build window?

I really don't like killing childhood dreams or anything like that, but let's take this year's game as an example. I'll even let you pretend you have 1114's robot so you have as much technical capability as possible. Take an empty field. There are 3 balls on it. Which one should the robot drive toward? How accurately can you get the ball's position? What if it rolls away out of camera view? Now add other robots, how do you pick the ball that is least likely to be knocked away by a defender? How do you account for the slipping of drive wheels and being pushed sideways, accurately enough that you're not at an insurmountable disadvantage to anyone with eyes?

It's an enormous task, and while taking enormous challenges is a load of fun, are you really going to suck up your team's resources, time, and effort for your own personal goal?

Never said 6 weeks, I am working on it right now. I kinda see what you mean, but honestly if you don't even know how to use pointers, how do you expect to do this? But the professionals have a different goal, I am not trying to argue, just stating my opinions

Andrew Schreiber 19-05-2010 18:27

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by davidthefat (Post 962933)
Never said 6 weeks, I am working on it right now. I kinda see what you mean, but honestly if you don't even know how to use pointers, how do you expect to do this? But the professionals have a different goal, I am not trying to argue, just stating my opinions

So, let me get this straight, you are trying to write an AI that can solve any problem? As someone who HAS written AI systems I can safely say you clearly know nothing. If you are interested in learning I would suggest you look into writing a simple program to solve an 8 piece puzzle in a reasonable time (ie, faster than a person can do it). When you do that I have another "trivial" problem for you to solve.

davidthefat 19-05-2010 18:33

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by Andrew Schreiber (Post 962934)
So, let me get this straight, you are trying to write an AI that can solve any problem? As someone who HAS written AI systems I can safely say you clearly know nothing. If you are interested in learning I would suggest you look into writing a simple program to solve an 8 piece puzzle in a reasonable time (ie, faster than a person can do it). When you do that I have another "trivial" problem for you to solve.

No not any, I am a football player, so the most obvious thing for me was having a "playbook" of strategies

548swimmer 19-05-2010 18:36

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by davidthefat (Post 962936)
No not any, I am a football player, so the most obvious thing for me was having a "playbook" of strategies

Wouldn't you then have to touch the joystick to tell it what to do? Or might that be an alternative option to explore?

davidthefat 19-05-2010 18:38

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by 548swimmer (Post 962937)
Wouldn't you then have to touch the joystick to tell it what to do? Or might that be an alternative option to explore?

No, I was thinking more like before the match, either have a switch board that has all these options that give the robot "moods" like aggressive, passive and what ever then just go into the match and just let it run. Or do that softwarely and have a config file

sgreco 19-05-2010 18:51

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by davidthefat (Post 962938)
No, I was thinking more like before the match, either have a switch board that has all these options that give the robot "moods" like aggressive, passive and what ever then just go into the match and just let it run. Or do that softwarely and have a config file

I don't know if you've ever been in the heat of elims, but you don't have time to download code. So this would only work in qualifications.

If you were around in 2008 hybrid mode sort of accomplished what you're talking about.

davidthefat 19-05-2010 18:59

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by sgreco (Post 962940)
I don't know if you've ever been in the heat of elims, but you don't have time to download code. So this would only work in qualifications.

If you were around in 2008 hybrid mode sort of accomplished what you're talking about.

The thing is not uploading code, easy as just taking out an SD card and replacing with another one with different config

548swimmer 19-05-2010 19:29

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by davidthefat (Post 962943)
The thing is not uploading code, easy as just taking out an SD card and replacing with another one with different config

I know this year our robot's autonomous was controllable by different switches on the robot. Different combinations selected one of about eight different programs. This might be simpler than swapping out a card.

Rion Atkinson 19-05-2010 19:33

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by 548swimmer (Post 962945)
I know this year our robot's autonomous was controllable by different switches on the robot. Different combinations selected one of about eight different programs. This might be simpler than swapping out a card.

Hows is flipping semi complex switches harder than inserting a labeled card?

548swimmer 19-05-2010 19:38

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by Formerly Famous (Post 962946)
Hows is flipping semi complex switches harder than inserting a labeled card?

Simpler may have been the wrong word. You're certainly less likely to lose switches bolted onto your electrical board than a labeled card.

AmoryG 19-05-2010 22:05

Re: Can I Make Something Clear?
 
You could always use the digital/analog inputs on the driver station. They work just fine.

virtuald 19-05-2010 22:40

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by davidthefat (Post 962929)
I like the motive of the guys behind the autonomous SDK stuff, but really, it won't help in the long run... Building things from scratch builds character.

From scratch then? Alright, well why aren't you programming in assembly language then?

Yes, clearly it's important to know how things work and to be able to evaluate their performance. But from scratch, really? I'm going to use std::sort() on my std::vector<> full of dynamically allocated objects full of boost::shared_ptr<> objects long before I try to write my own sort function on a raw array that I have to manage myself along with all of the silly pointers for my dynamically allocated objects. It's just not worth my time.

Once you get to the real world, you will find there is a *huge* value to generic frameworks/libraries that already exist and have been debugged and well thought out (and theres even value in some of the ones that haven't quite been thought out all the way).

davidthefat 19-05-2010 22:53

Re: Can I Make Something Clear?
 
Quote:

Originally Posted by virtuald (Post 962988)
From scratch then? Alright, well why aren't you programming in assembly language then?

Yes, clearly it's important to know how things work and to be able to evaluate their performance. But from scratch, really? I'm going to use std::sort() on my std::vector<> full of dynamically allocated objects full of boost::shared_ptr<> objects long before I try to write my own sort function on a raw array that I have to manage myself along with all of the silly pointers for my dynamically allocated objects. It's just not worth my time.

Once you get to the real world, you will find there is a *huge* value to generic frameworks/libraries that already exist and have been debugged and well thought out (and theres even value in some of the ones that haven't quite been thought out all the way).

I believe that the WPILib is more than enough generic but more than enough to pull off an autonomous mode of this magnitude. Well IDK about you, but I feel way more accomplished if I do it from scratch. I rather program from scratch using OpenGL than use Irrlicht or Ogre3d or other stuff... Builds character


All times are GMT -5. The time now is 16:24.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi