Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   General Forum (http://www.chiefdelphi.com/forums/forumdisplay.php?f=16)
-   -   Hybrid Challenge-No Robot Left Behind (http://www.chiefdelphi.com/forums/showthread.php?t=61627)

Scott Carpman 14-01-2008 23:54

Re: Hybrid Challenge-No Robot Left Behind
 
All NYC Teams should send a student to the programming clinic sessions on Saturday at LIC High School. Randy Schaeffer sent out an email about it, I'll try to dig it up from the ol' inbox.

EDIT:
Follow this link for info
http://nycnjfirst.org/training_programming.html

NRLB!

taggartbg 15-01-2008 00:01

Re: Hybrid Challenge-No Robot Left Behind
 
I, along with 3 other members of my team, got our IR board and code working today. We plan to soon make a YouTube video to explain our process and offer hints for other teams to do the same.

Michelle Celio 15-01-2008 11:14

Re: Hybrid Challenge-No Robot Left Behind
 
I, for one, do not accept.

I'm going to try and compile my perspective, but odds of that happening successfully and everyone understanding my points is going to be slim to none.

But..

Let's say, you're a freshman on a rookie team, and have been put in charge of programming. You work hard all the six weeks to get your robot up and running. You get to the competition, with no hybrid mode because you either didn't have the resources to learn how to program it or you just plain and simple ran out of time.

So, you're at your first ever FIRST competition, and a semi-established team comes up to you "Hey, you don't have a hybrid mode? Here use this pre-built one!". So they load the code on to your robot, and explain to you what it does or how they wrote it.

How important do you think this code is to the freshman? Do you honestly think that this freshman is going to sit down between the end of this season and next builds-eason and learn how to program for another possible hybrid mode since what they know from a FIRST Competition is that the "harder" code will just be handed to them?

Yes, helping other teams get their robot working for hybrid mode, and explaining to them how the code was made is the "Gracious Professional" way to do things, but what message are we really sending to the freshman and rookie teams that have joined this year?

FIRST OVERDRIVE should not be about handing out hybrid modes to people who don't have them, it's supposed to be a challenge. If some teams can't beat the challenge than it's on them.

Just my $0.02

feliks_rosenber 15-01-2008 11:50

Re: Hybrid Challenge-No Robot Left Behind
 
Quote:

I accept the challenge for the Israeli regional, and I'm sure Tottanka and feliks will join me.

Great Idea!

-Leav
Leav you were right! Team 2217 accepts the challenge and will make sure all teams have hybrid mode or at least do their best to have it.

As I read from the previous post, there is something we mustn't do.

Dishing out the code won't do any good. We must encourage rookie to think because that's what FIRST is all about.

Only after teams thought and tried to find the solution by themselves with our mentoring and help, only then shell we present the code. Parts of it at first, to see maybe that gives the inspiration and spurs the team to think.
If that doesn't help than more of the code should be revealed.

There must be a process of mentoring and studying.

Travis Hoffman 15-01-2008 11:58

Re: Hybrid Challenge-No Robot Left Behind
 
Quote:

Originally Posted by Michelle Celio (Post 678374)

FIRST OVERDRIVE should not be about handing out hybrid modes to people who don't have them, it's supposed to be a challenge. If some teams can't beat the challenge than it's on them.

Just my $0.02

Some teams don't have the mentors with programming experience who can help them solve the challenge. That's why forums like ChiefDelphi exist. But the information here is best put to use during the six-week build.

Let's empower and educate those who wouldn't normally try autonomous or hybrid programming to learn about such techniques NOW and inspire them to incorporate such functionality into their code. Then these students WILL take ownership of the knowledge prior to the regionals and will be more confident in using and tweaking THEIR code at the competitions.

It's easier to ensure no teams will be left behind if you find out who needs a jump start at the BEGINNING of the race....

meaubry 15-01-2008 12:11

Re: Hybrid Challenge-No Robot Left Behind
 
As I see it, there is a difference between general education vs. specific application.

In order to satisfy the suggestion for "no robot left behind", I also side with the education and training vs. providing plug and play code.

I agree and understand the lack of knowledgable folks on every team to develop the code used during hybrid, while at the same time strongly support teams taking responsibility for applying the code to their specific use.

I support the idea of creating code for general purposes, then when shared with teams that want to use it (and preferably early in the build schedule) - they should be the ones inputting the values needed for their specific drive system and any other application they want to apply it to.

The key here, in my mind, is developing code that would help everyone as much as possible, without doing the whole job for them.

Mike

Alexa Stott 15-01-2008 12:24

Re: Hybrid Challenge-No Robot Left Behind
 
Quote:

Originally Posted by Michelle Celio (Post 678374)
I, for one, do not accept.

I'm going to try and compile my perspective, but odds of that happening successfully and everyone understanding my points is going to be slim to none.

But..

Let's say, you're a freshman on a rookie team, and have been put in charge of programming. You work hard all the six weeks to get your robot up and running. You get to the competition, with no hybrid mode because you either didn't have the resources to learn how to program it or you just plain and simple ran out of time.

So, you're at your first ever FIRST competition, and a semi-established team comes up to you "Hey, you don't have a hybrid mode? Here use this pre-built one!". So they load the code on to your robot, and explain to you what it does or how they wrote it.

How important do you think this code is to the freshman? Do you honestly think that this freshman is going to sit down between the end of this season and next builds-eason and learn how to program for another possible hybrid mode since what they know from a FIRST Competition is that the "harder" code will just be handed to them?

Yes, helping other teams get their robot working for hybrid mode, and explaining to them how the code was made is the "Gracious Professional" way to do things, but what message are we really sending to the freshman and rookie teams that have joined this year?

FIRST OVERDRIVE should not be about handing out hybrid modes to people who don't have them, it's supposed to be a challenge. If some teams can't beat the challenge than it's on them.

Just my $0.02

Waynep's challenge did not suggest simply handing code to rookie teams. As he stated in his original post, the code will be explained to the less experienced programmer, allowing him or her to fully understand how the code works. I, along with Wayne and other FIRSTers, am sick and tired of seeing robots doing absolutely nothing during hybrid/auto mode.

If you had any experience with programming in FIRST, you would understand that programming the robot does not simply mean dumping some code in and having it work the first go around. Different wiring schemes, as well as other numerous, unpredictable factors, will prove to be somewhat of a challenge for the veterans trying to help the other teams. Such challenges will force the programmers from each team to work as a cohesive whole to develop the proper code for the individual team's robot. Besides, how is this any different than a team offering to lend support to another team in order to get its drive train working? That has an ever greater effect on the competition, and it is a practice that is widespread and well-accepted by the FIRST community. I have even helped out rookie teams with some simple coding errors. Again, how is that any different than helping the team have an effective hybrid mode? I see Waynep's challenge as a way to increase the support the rookies are getting at the regionals, and I see it as he is striving to channel that support into a specific part of the game, one that is extremely daunting to new teams/programmers.

I can testify that working as a rookie alongside a veteran, and having the more experienced programmer walk you through the code is an effective teaching method. As freshmen, Kristian and I worked alongside Bharat, mostly watching Bharat and allowing him to explain the code to us once he was able to have the robot working flawlessly. We grew from that point, reprogramming the robot(s) during the offseason and gaining an understanding of how to program on our own. Now, Bharat is more of a supervisor, letting us do the programming and lending his advice when called upon. The system that Wayne has proposed seems quite similar to such a method. I fully believe that, if teams accept the challenge, programming will reach new heights in FIRST.

Perhaps you should go reread the original post. It may help you to fully and accurately comprehend the challenge which Wayne has presented us.

nparikh 15-01-2008 12:38

Re: Hybrid Challenge-No Robot Left Behind
 
In answering the question of what we are trying to show teams whom we help with the autonomous / hybrid period--we are showing them that help is here. We are showing them that FIRST is not a dog eat dog world in which only the strong survive. In fact, we take pride in the fact that we are different than other competition sports. Our goal is not to promote Darwinism [or so I hope].

Like others have mentioned, not everyone has the same level of support. Some teams have software and electrical engineers to help them and others do not.

Instead, I feel that by helping such teams, we are teaching them an important lesson--to make the best of what you can. Starting out, you won't always have the resources, the support, the knowhow to do everything that you want to--but provided that this challenge is executed properly [by really showing them how to do such a thing rather than just "dumping code"]--newer teams especially will benefit by learning the lesson that FIRST is different; that teams help one another for the benefit of the community at large.

And so if you teach a a programmer how to implement some code to get their robot running and perhaps leave some contact information and resources for them to get more help, I do believe that they will have learned something. Sure, they might not be an expert robot programmer in the time you've helped them, but they have learned that help is there and they have learned where to look for it. And learning something is never a bad thing in my book.

Swan217 15-01-2008 12:59

Re: Hybrid Challenge-No Robot Left Behind
 
I completely support Wayne in this challenge. In this week's FIRSTruth episode, I explain how instrumental this policy will be for the competition. As a summary, basically if you don't make sure all of your alliance partners have autonomous hybrid (And this year's algorythm should have you playing with every team), you will go nowhere. If everyone's robot has autonomous hybrid, then everybody wins, and the competition will be much more exciting.

As the way I see it, it's up to every team to make sure that they have a basic hybrid mode program. They need to try, even if it doesn't work. The mission to the veterans is that they need to be the wingflaps for the young teams to lift off with, not the entire jet engine. Everybody has to do their part, and if they do, it makes the challenge much easier for the veterans participating. But if you selfishly don't bother helping your fellow teams, and you end up winning the regional, or Chairmans, or any technical award, you don't deserve it and you have failed in the mission of FIRST.

For the young teams: It's ok if you fail, but at least TRY to get your hybrid working, and the veterans will be there to help you along.

JaneYoung 15-01-2008 13:06

Re: Hybrid Challenge-No Robot Left Behind
 
What I'm getting from this challenge is the possibility/opportunity of working together for the benefit of the game, mutually agreeing to help it be the best it can be. By suggesting this at the front end of build rather than the back end or waiting until after the 1st regional competitions, it allows teams to think about it.

Working together as teams in helping to make the competition more fun and exciting, imagine that. <grin>

GaryVoshol 15-01-2008 14:10

Re: Hybrid Challenge-No Robot Left Behind
 
Quote:

Originally Posted by Waynep (Post 677357)
Veteran teams (or any team with a robot) that are attempting to do something in hybrid: it is my challenge to you to work before and at the regionals to ensure that NO ROBOT GETS LEFT BEHIND in hybrid; everyone DRIVES at the very least and attempts to cross one or two lines. Just giving the team the proper code does not fulfill the challenge. I fully expect you to help them understand the code (whether you enable them to dead reckon or use an IR remote to move), answer their questions, leave them with the confidence and knowledge to continue to improve their efforts and know you will be there to help them if questions arise, as well as to leave your door open to anyone seeking advice.

Quote:

Originally Posted by Michelle Celio (Post 678374)
I, for one, do not accept.

So, you're at your first ever FIRST competition, and a semi-established team comes up to you "Hey, you don't have a hybrid mode? Here use this pre-built one!". So they load the code on to your robot, and explain to you what it does or how they wrote it.
...
FIRST OVERDRIVE should not be about handing out hybrid modes to people who don't have them, it's supposed to be a challenge. If some teams can't beat the challenge than it's on them.

I totally understand Michelle's point. "If you give a man a fish, he eats for a day. If you teach a man to fish, he eats for a lifetime." We shouldn't be giving things to any team. We should be helping them to develop something on their own. However, if you look in the excerpt I quoted from the original challenge, you will see that was what was proposed. Even more important than working at a regional with a team is working before ship with them.

Veterans should look at the lists of teams in their area, and make contacts with those who are new. Find out what they are doing, offer your expertise.

While 1025 is not technically a rookie team this year, we are newly organized, under new sponsorship. There is no way we could have done it without the help of the Thunderchickens, starting over 6 months ago. That's the kind of help new teams need. Thanks, 217!

jessjank. 15-01-2008 14:21

Re: Hybrid Challenge-No Robot Left Behind
 
The No Robots Left Behind in Hybrid Challenge is a fantastic and completely achievable proposal. It's something that with a little collaboration among teams and a desire to continue to raise the bar, we can help foster a sense of confidence and spirit not only in our rookies, but veteran teams as well.

An important part of this challenge is that if you are accepting it, you won't just be giving the teams your code and expecting them to use it as is - you should feel the responsibility to engage them in the process of creating and understanding working code, and leave them with the ability to expand upon the knowledge and experiences you leave with them. Through such inspiration, we will hopefully find significant growth in the abilities of our teams now and in years to come.

The entire Pittsburgh region has readily accepted the challenge. Myself, the Regional Director, members of the National Robotics Engineering Center, and the Pittsburgh Teams have made it the goal of our region to have all teams, old and new in the surrounding area, have a functioning hybrid mode and have been promoting this through weekly programming workshops for all teams at NREC (held by Pittsburgh Referee and NREC employee Tim Friez). NREC graciously created the new RobotC programming system and has been using this in it's workshops to help teams (not just those in Pittsburgh) gain a better functional understanding of what their code actually does and is making sure that the teams gain the ability to write code that works. I encourage, if possible, to expand such workshops to all regions or at least to make it known to teams in need when your resources and aid may be available to them.

I can't wait to see just how successful this endeavor may be! Good luck to all teams and happy programming!

Bharat Nain 15-01-2008 14:27

Re: Hybrid Challenge-No Robot Left Behind
 
Quote:

Originally Posted by Michelle Celio (Post 678374)
I, for one, do not accept.

So, you're at your first ever FIRST competition, and a semi-established team comes up to you "Hey, you don't have a hybrid mode? Here use this pre-built one!". So they load the code on to your robot, and explain to you what it does or how they wrote it.

How important do you think this code is to the freshman? Do you honestly think that this freshman is going to sit down between the end of this season and next builds-eason and learn how to program for another possible hybrid mode since what they know from a FIRST Competition is that the "harder" code will just be handed to them?

Quote:

Originally Posted by Waynep (Post 677357)
Veteran teams (or any team with a robot) that are attempting to do something in hybrid: it is my challenge to you to work before and at the regionals to ensure that NO ROBOT GETS LEFT BEHIND in hybrid; everyone DRIVES at the very least and attempts to cross one or two lines. Just giving the team the proper code does not fulfill the challenge. I fully expect you to help them understand the code (whether you enable them to dead reckon or use an IR remote to move), answer their questions, leave them with the confidence and knowledge to continue to improve their efforts and know you will be there to help them if questions arise, as well as to leave your door open to anyone seeking advice.

Forgive me for using you as an example Michelle, but you represent a vast majority of rookie team's thought process. I am actually very glad you made this post because it is a valid school of thought. If you don't mind Wayne, I would like to extend the Hybrid Challenge based on my explanation below.

Since 2004, my team has always encouraged me to help other teams get their robot working in autonomous and tele-operated period. At every regional I have been to, I can proudly say that I have helped at least 2 teams with their robot whether it is in programming, electrical or mechanical. On the surface, this is gracious professionalism and all is going well. But the truth of the matter is, every so often, there is a team who says exactly what Michelle is saying. They do not want the help. If they do take the help, I have to leave them feeling as though I was completely wrong and somehow they were the magic in getting their autonomous mode up and running. More than half the time, I choose to let them be because I could be doing other things in the time I could be *trying* to help them. It is also not wise to mess with anyones ego either. Sometimes they are best left to their misery. It also saves you the frustration and negative emotions that come with that.

The problem in most cases is the lack of expertise and experience. If they knew how to do it, don't you think they would have done it already? I refuse to believe that time is an issue. There has to be 5 minutes in the whole day to write 30 lines of code. There are many times I seeked outside help for programming also. If I knew what the problem with my code was, I would have fixed it already. But the issue is I did not so I listened to people who said they could help. I could have easily put an ego shield on and said "I am on team 25 and we won x amount of regionals". When I took the help, I realized what was going on and then went on to make the code better.

I am not excited about those people though. I am excited for the ones who will gladly take the help and initiative to learn what works and how. For those of you who know what I give rookie teams, it is really autonomous in its simplest form. Absolutely simplest. I never hand them the code. I sit down and write it with them and explain what every line is (and there are only a few, I assure you). There are only about 3 or 4 things they need to understand in order to write a successful autonomous mode. In 100% of the cases, those who chose to listen and learn, went ahead and modified the code to do something better if there was room for improvement. What I just said is very profound because it represents the spirit of learning something new and taking it to the next level. This year, depending on the situation, I would write enough code to make their robot go forward, and let them figure out how to make it turn left and so on. I have no doubt in my mind that those who want to do better in competition will do better. With the new knowledge acquired, they will take it to the next level and thank those who helped them. And right after that they will show signs of what is called excitement which indicates that they are having fun. For rookie teams who are going to only one regional, this could be a major portion of making their first year seem successful. Hybrid mode is a big deal this year. 4 points for crossing a line is a huge bonus. Many rounds will be won just because of hybrid mode and helping a rookie team through this will indeed make them feel a whole lot better. Contrary to what everyone tries to say, it is about the game and it is about performing well because the game is the glue to this organization and it is what makes people are so many different levels (students, teachers, engineers, corporate etc) come together. Helping a team win even one match might help them stay excited until the next season.

HYBRID CHALLENGE EXTENSION
With Wayne Penn's given permission, I would like to extend the Hybrid challenge. If you are a rookie team or a team who has limited resource and time, I strongly urge you to keep an open mind to those who can teach. I urge you respect the success of others and learn from it. I urge you to glorify their help by taking it to the next level. I am never tired of helping teams (even though my team always comes first), but sometimes it is really good to be thanked for helping. I remember once at Palmetto regional in 2005, a team made me a neat little tether/programming cable with multiple connectors on each end. We needed one since we had only 1 left. This is called sharing resources.

I thank you Wayne Penn for providing all the inspiration and I thank you Michelle for boldly representing a point of view most people would be afraid to.

jgannon 15-01-2008 14:32

Re: Hybrid Challenge-No Robot Left Behind
 
As Jess noted, the Pittsburgh teams will ensure that all 35 teams at the Pittsburgh Regional (including eight rookies) have the know-how to score points in hybrid. The demands of build season make the logistics difficult for we mentors to ensure that everyone has this knowledge before the ship date, but having everybody in one room will make the task a lot easier. Wayne, this proposal is excellent, and it's going to make a big difference for teams that don't have the resources to program on their own. I'm willing to bet that the number of teams who can independently create autonomy next year will drastically increase because of the seeds we will be planting at this year's regionals. Thank you to Wayne and to everyone else who is participating to increase everyone's inspiration.

Travis Hoffman 15-01-2008 14:45

Re: Hybrid Challenge-No Robot Left Behind
 
Quote:

Originally Posted by GaryVoshol (Post 678507)
I totally understand Michelle's point. "If you give a man a fish, he eats for a day. If you teach a man to fish, he eats for a lifetime." We shouldn't be giving things to any team. We should be helping them to develop something on their own. However, if you look in the excerpt I quoted from the original challenge, you will see that was what was proposed. Even more important than working at a regional with a team is working before ship with them.

I think there is a compromise that must be struck between "teaching a rookie everything there is to know about MPLAB and autonomous programming from scratch" vs. "here's a complete MPLAB project - it'll work - download it and go". This is the build season, not the summer and fall where longer term classes and educational sessions can be held. It's crunch time, ladies and gentlemen. If veterans are to assist rookies and the inexperienced NOW, during the build and at the competitions, ANNNNND we hope to preserve our sanity because, ya know, we still have to design and build our robots too, then we're going to have to meet in the middle on this.

The autonomous program structure I posted earlier in this thread does not exist as a standalone package - it is merely a foundation upon which additional autonomous understanding can be constructed. The recipients must still take that code and discover where to insert and "hook" it into their project. They must understand what pwm outputs are and learn how the variables in the code link to the physical outputs on the RC. They must learn what the different speed and timing parameters are and how changing those values affects the real-life operation of the robot. If they wish to add additional steps to the program, they must seek to understand the function of the if statements and how the pathtracker variable works. It is merely a modular building block. It isn't a complete drop-in solution, nor is it too watered down to prevent relatively rapid comprehension of its functionality. It encourages further experimentation and learning while saving veterans the added stress of meticulously explaining what the heck an unsigned int or char is or why all those #define statements are in there.

Let me just say this from my personal experience - I'd like to think that I don't totally inhale audibly at programming. I possess nowhere near the skills that many others on these forums do, nor do I have any formal training in C, but I can do enough to get the job done. Now everything I first learned about programming in my rookie year of 2001, I learned by looking at the previous programmer's code from 2000. He left for a fellowship at Stanford - no one else on the team knew PBASIC. I joined the team in May of 2000, but I didn't have the opportunity to sit down and try to understand the code until late December, just prior to the 2001 kickoff. If I didn't have that existing framework in place from which I could borrow and construct my own 2001 code, I'd have been totally lost. And even with all the "pre-established" programming presented to me at the start of my initial programming journey, I'm quite certain I was very proud of what I was able to create by the end of that first season.


All times are GMT -5. The time now is 10:00.

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