SUMMARY: Tasks to do: - Finish up code sprint stuff by Thursday (Oct 8th) - Create SVN branches (based on the features that we will work on) by next Saturday (Oct 10th) - Yulia's team: * look at the general issues around ML - generating data, classifying the data, how to make decisions based on that data. - Chani's team: * work on world-state, as it will probably be useful to most other improvements. Review Board and SVN - Most part works, only the email notification that has not been set up yet. - Will try to get email notification for SVN working too. Decision Tree: - Will start with goalie since it is the least complicated Machine Learning: - General approaches: (a) understand how they work (b) how to implement them in the Robocup world (e.g. what information to use to train them), and (c) and how to use them if you can do it. - Extending world state may be useful for ML techniques we will employ - How to generate and store large amount of data? - Useful links: - http://www.ni.uos.de/index.php?id=880 - http://www.cs.toronto.edu/~zemel/Courses/CS411/Lect/05dtrees.pdf General Strategy: - Try to reduce moving backward since it drains stamina Next meeting depends on the result of the poll http://www.doodle.com/6xgbkfevunrypyz3 although it has been decided we will have next meeting on the next saturday at the same time before Brent left. Full Transcript: **** BEGIN LOGGING AT Sat Oct 3 14:20:11 2009 Oct 03 14:21:30 turning is way to slow to turn and catch ... almost seems like the server hinders goalies very greatly Oct 03 14:21:40 I think that the goalie may have to intercept in a similar way to regular players, in that it may need to come at the ball from the side, and so time its arrival at an interception point. Oct 03 14:22:38 It may not be such an unrealistic restriction - it's quite hard for a real goalie to intercept a ball when a player has a good shot at goal. Oct 03 14:23:22 ya, but i still think the goalie of all players needs to move more then forward and backwards ... Oct 03 14:23:25 The goalie probably needs to coordinate with the defenders to some extent, so that he only needs to cover a smaller part of the goal. Oct 03 14:23:25 but humans can at least dive sideways Oct 03 14:24:02 if I was designing rel robots, I'd put the goalie's wheels on sideways so that it moved like a crab Oct 03 14:24:14 yup Oct 03 14:24:27 And if the robots that the simulator is representing dived sideways, we'd have a bunch of useless machines that look like cockroaches on their backs! :-) Oct 03 14:24:36 hehe Oct 03 14:25:22 well, they should be better robots then Oct 03 14:25:23 anyways Oct 03 14:25:25 It may be possible with the real robots to control each wheel separately and thus get more control of movement. It's a moot point here, though. Oct 03 14:25:29 also, the speed reduction when turning, as philip pointed out at the spirt, really is quite extreme Oct 03 14:25:37 were we going to talk about neural nets..? Oct 03 14:26:02 Yes, neural nets would seem to be one possible thing for Chani's team to work on. Oct 03 14:26:38 On the same basis as the decision tree, this may be a large piece of work, so it may be good to get started on it in order to see how feasible it is. Oct 03 14:26:46 improved interception & shooting & passing sounds like it could be a big topic too Oct 03 14:27:12 On the other hand, I think that the other two pieces would also provide everybody with a big improvement. Oct 03 14:27:34 While big, it would be something that could be done more incrementally than neural nets. Oct 03 14:27:42 true Oct 03 14:28:28 i imagine that all of the actions will be decided by neural network and tree decision, is that correct? Oct 03 14:28:33 The improved interception/shooting/passing sounds like it would be the most useful, to begin with Oct 03 14:28:41 would it be a good idea to try using neural nets for passing? Oct 03 14:28:42 I think that the improved interception/shot-making would be dependent on the improved world state to some extent, too. As would the neural net stuff, perhaps. Oct 03 14:29:17 neural nets seems like they'd effect nearly everything Oct 03 14:29:51 yeah, same can be said for decision tree too Oct 03 14:30:01 How you use neural nets or decision trees is up to you. Your suggestions seem reasonable. You might want them to decide positions of players, too, regardless of whether the ball was involved. Oct 03 14:30:14 i think the point is to start working on them and see whether we can do it at all Oct 03 14:30:41 since most of the successfull teams incorporated machine learning stuff, it seems reasonable for us to try that too Oct 03 14:30:46 That sounds like the best inital approach, to assess the feasability Oct 03 14:31:08 and if machine learning stuff takes care of all our problems, i don't think it's very bad Oct 03 14:31:15 agreed, also i think they should be applied to _small_ things, so we can still have an understanding of why things happen ... Oct 03 14:31:17 :) Oct 03 14:32:07 I think it would be a good idea to see if you can (a) understand how they work, (b) how to implement them in the Robocup world (e.g. what information to use to train them), and (c) and how to use them if you can do it. Oct 03 14:32:28 Okay, that sounds good Oct 03 14:32:39 Working on something small seems like the way to go, yes. Oct 03 14:32:52 * Chani has sudden visions of little norns from Creatures running around trying to play soccer Oct 03 14:32:52 Goalie seems like a favourite candidate. Oct 03 14:33:08 * philip has quit (Nick collision from services.) Oct 03 14:33:09 :) but norns would probably just try to eat the damn ball Oct 03 14:33:23 i don't know if i gave you guys this link, but this team has some papers and tutorials http://www.ni.uos.de/index.php?id=880 Oct 03 14:33:36 and source code too Oct 03 14:33:37 * philip_ (i=461d0df4@gateway/web/freenode/x-4a0aa0ddb05b97e3) has joined #robocup Oct 03 14:33:47 Just got kicked off for some reason! Oct 03 14:33:51 o.0 Oct 03 14:34:22 I think you may find that the extended world state might be useful to implement for the ML jobs. Oct 03 14:34:30 Philip, it said nick collision, probably somebody has registered your nick already Oct 03 14:35:05 Thanks for forwarding the missed lines, Chani. Oct 03 14:35:31 my main concern is that trees and nets require tons of actual data. generating several hundreds of training examples by hand doesn't excite me too much Oct 03 14:35:35 ya, one thing i really want in the world state logic is a better understanding of were the ball is ... if it's not in view, they currently seem to have no idea where it is Oct 03 14:35:56 hmm. I wonder how hard it would be if we make AI that uses what world info there is and then later upgrade it to take advantage of extended world state Oct 03 14:36:03 For the ML work, it might be useful to take into consideration more of the past in order to make better decisions. Oct 03 14:36:14 Chani, that's online learning, but you can't start with nothing Oct 03 14:36:21 So before we start the ML stuff, we should extend the world view? Oct 03 14:36:27 sorry, Philip, that's exactly what you said Oct 03 14:36:49 No worries. :-) Oct 03 14:37:29 Yes, getting the large amount of data is also my concern. Where do you get it from, how do you generate it and put it into the AI? Oct 03 14:37:47 i've seen players stand so close to the ball they can't find it ... funny to watch Oct 03 14:37:54 lol Oct 03 14:38:00 hmm. Oct 03 14:38:02 I guess that could be one task for this week - looking at the possibility of finding the required information. Oct 03 14:38:42 i seem to remember something about a trainer client, similar to the coach but with more godly powers Oct 03 14:38:50 Maybe one team should look at that and the other do something else, so that we're getting some concrete work done as well? Oct 03 14:39:17 i'm having decision trees right now in one of the classes Oct 03 14:39:34 i think i'll have to implement something for one of the assignments too Oct 03 14:39:35 That would probably mean Chani's team starting on world-state work, I think. Oct 03 14:39:39 making htem play against the java team might be an easy way of training them, perhaps... Oct 03 14:40:21 I think one of the ways of getting training data, is just collecting the logs of different plays of teams (not necessarily ours) Oct 03 14:40:22 The hard part is setting up the situation Oct 03 14:40:43 Given that it takes five minutes to run a game, and you probably want to play hundreds of games, I'm not sure that it is possible to generate enough data by using the client. Oct 03 14:40:56 leave it overnight Oct 03 14:41:05 i have 3 computers, i can use them all Oct 03 14:41:15 sorry, but i heard so little about decision tree. Is it part of extending world state? Oct 03 14:41:22 no Oct 03 14:41:27 If you could work out how to make the clients learn as they play, of course, then you'll be fine! :-) Oct 03 14:41:41 Decision trees are a separate thing to world-state. Oct 03 14:41:58 Alex, trees are a different machine learning technique Oct 03 14:43:01 The problem with running games is that they seem to require people to set them up and kick them off, so unless you're going to stay up all night with your three computers, I think it could be tricky. :-) Oct 03 14:43:09 do decision trees learn? i never really thought about that, i know very little about them Oct 03 14:43:28 i dont think they learn Oct 03 14:43:29 You train decision trees in advance, then use them to work out what to do. Oct 03 14:43:43 Actually there are also online algorithms for decision trees Oct 03 14:43:47 but they are not very common Oct 03 14:44:33 Online ones probably adjust their trees based on further experience, right? Oct 03 14:44:44 okay, so decision tree has nothing to do with world state except that a better world state may be better for executing decision tree? Oct 03 14:45:07 philip_: yes Oct 03 14:45:20 philip_: maybe we could rig the monitor so that it kicks itself off somehow. probably wouldn't be prefet but would allow us to run some games overnight Oct 03 14:45:21 A better world state would provide more information for the decision tree to use Oct 03 14:45:22 guys, take a look at these lecture notes for starters http://www.cs.toronto.edu/~zemel/Courses/CS411/Lect/05dtrees.pdf Oct 03 14:45:23 Effectively an online version would just be what you'd get if you ran the regular training algo on the data you had up to that point. Oct 03 14:45:55 though it might be tricky to extend the world state in a way that is nice to branch, so we should discuse that design Oct 03 14:46:36 We were looking at how the monitor did that, and I'm not sure how easy it would be. Might be worth looking at. But you probably need to start everything each time, and I can see that going wrong. Oct 03 14:47:24 for mac i can write a script that would do it quite easily Oct 03 14:47:38 no idea how to do it on other os Oct 03 14:48:16 how do you write a script to kick-off the game yulia? Oct 03 14:48:28 shouldn't be to hard Oct 03 14:48:29 it can be done in applescript Oct 03 14:48:41 interesting point Oct 03 14:48:56 Patrik: yes, I think you'd have to take the state and do things with it to get "classes" to branch on. Oct 03 14:49:38 So, let's try and come to a consensus here. Oct 03 14:49:38 svn branches.. what fun :P Oct 03 14:50:01 what i am thinking is, we could modify the classic monitor to send 'kick-off' command automatically after several players have joined in Oct 03 14:50:17 neural nets or extended world state. hmmm. Oct 03 14:50:30 I think that Yulia's team should look at the general issues around ML - generating data, classifying the data, how to make decisions based on that data. Oct 03 14:50:59 And I think that Chani's team should work on world-state, as it will probably be useful to most other improvements. Oct 03 14:51:15 ok Oct 03 14:51:22 Sure Oct 03 14:51:27 sounds good Oct 03 14:51:43 ya wohl Oct 03 14:51:48 it'd probably be a good idea for us to do a little reading on neural nets too, if there's time Oct 03 14:51:50 Chani's team agrees! How about Yulia's? Oct 03 14:52:03 i'm game for that Oct 03 14:52:05 Chani: sure read away! Oct 03 14:52:19 are we meeting again on tuesday? Oct 03 14:52:20 Alex? Oct 03 14:52:23 what sort of timeframe are we thinking here? Oct 03 14:52:28 or we are switching to weekends now? Oct 03 14:52:38 i think it's a good idea Oct 03 14:53:07 We can meet on Tuesday or the weekend. Or both, if needs be. Any opinions? Oct 03 14:53:35 i have no classes on tuesday and obviously nothing on weekend. i can meet either day or both Oct 03 14:53:54 I'd like the weekend time better Oct 03 14:54:05 OK, so we're settled on the tasks for the next week. Finish the code sprint work, branch svn repository, do ML background (particularly decision trees) and world-state. Oct 03 14:54:34 alright Oct 03 14:54:40 so... when should we have the code sprint stuff done by? Oct 03 14:55:56 Let's say the code sprint work should be finished by Thursday. The repository branched by next Saturday. Oct 03 14:56:09 Ioana and Chani: Should we set aside some time to discuss the world-state stuff further? Oct 03 14:56:09 ok Oct 03 14:56:17 ok, that shouuldn't be a problem Oct 03 14:56:20 Brent_Mombourque: yes Oct 03 14:56:37 People can start thinking about world-state changes ahead of that, I guess, and just put it into the relevant place when the branch happens. Oct 03 14:56:47 Brent_Mombourque: maybe we can use the tuseday slot for that :) or do you wanna discuss it today? Oct 03 14:57:03 tuesday would be better for me Oct 03 14:57:17 yeah, give us a chance to do some reading/thinking Oct 03 14:57:24 Chani: Probably tuesdays slot, we can spend time taking a good look at the current world state model until then Oct 03 14:57:34 world state, iirc, was stuff like memory and moving the head, wasn't it? Oct 03 14:57:38 and, I have to get going soon, I have diner plans in 5 mins Oct 03 14:57:39 Yulia and Chani: you can organise how your teams work on their respective tasks over the next week. Oct 03 14:57:52 And perhaps everyone should get together on Saturday again? Oct 03 14:57:59 sounds good! Oct 03 14:58:08 who's doing minutes for this meeting? Oct 03 14:58:18 Perfect Oct 03 14:58:19 I can do them and post them with previous batch Oct 03 14:58:32 great Oct 03 14:58:32 Head movement was another task that Yulia's team was going to work on, I think. Oct 03 14:58:43 oh Oct 03 14:58:46 I'll do them next week, hopefully my residence's internet will be fine next week.. Oct 03 14:58:52 * Chani needs to go look at the task list again :) Oct 03 14:58:56 i'll do the minutes Oct 03 14:59:26 ya, that falls with Yulia's team ... though as i said, seeing things should really be there to better the world information ... i think it'll be tricky Oct 03 14:59:33 Okay, so: World state, finishing code sprint stuff, branch svn, and ML readings Oct 03 14:59:35 thats all right? Oct 03 14:59:39 World state involves keeping information about what was seen for a longer period of time, so that better (I hope!) guesses can be made about how things are moving around, for example. Oct 03 14:59:48 Brent_Mombourque: yep Oct 03 15:00:11 K, I have to get going now though Oct 03 15:00:13 and meeting same time next week Oct 03 15:00:15 bye :) Oct 03 15:00:29 See you all next week (and possibly earlier?) Oct 03 15:00:30 meeting adjourned? Oct 03 15:00:37 actually, i just remember Oct 03 15:00:46 i have a wedding to attend next saturday Oct 03 15:00:47 ya, tuesday@5 for the world state stuff Oct 03 15:00:58 kk, sounds good Oct 03 15:01:00 Patrik: Well, when the improved world state is done and then the head movement gets added in, we should see a further improvement, right? :-) Oct 03 15:01:07 Bye Brent! Oct 03 15:01:14 See ya! Oct 03 15:01:15 is it possible to find other time? Oct 03 15:01:19 * Brent_Mombourque has quit ("Page closed") Oct 03 15:01:37 urgh Oct 03 15:01:40 I have nothing more to discuss. Oct 03 15:01:42 well, there's sunday... Oct 03 15:02:01 Alex: another time rather than Saturday or what? Oct 03 15:03:00 philip_ : yeah, other time than saturday if it is possible Oct 03 15:03:07 Like when? Oct 03 15:03:49 saturday night (western time) actually works for me Oct 03 15:03:54 sunday also good Oct 03 15:04:26 I can make quite a few times on Sunday. Saturday later than this is not a possibility. Oct 03 15:04:37 sunday is good for me Oct 03 15:04:37 friday night (western time) also good Oct 03 15:04:54 friday after 7pm Oct 03 15:05:02 can we do another poll? Oct 03 15:05:05 sounds like we should do another survey Oct 03 15:05:16 Fridays are bad for me - I have five hours of class and another meeting. Oct 03 15:05:45 sunday seems to be the most feasible option Oct 03 15:05:47 midterms will be coming up so timing meetings might get quite interesting Oct 03 15:05:56 i can do sunday Oct 03 15:06:27 I'll see if I can set up another poll quickly. Oct 03 15:06:34 everybody can do sundays it seems Oct 03 15:06:38 except Brent who is not here Oct 03 15:06:56 Chani? Oct 03 15:07:19 yeah Oct 03 15:08:09 i can generally move the things i have to do around on the weekends, working on assignments, hanging out with friends, so they're better then weekdays in that sense Oct 03 15:08:15 next weekend sunday will work; I could probably make any time Oct 03 15:08:40 * Chani has a midterm on friday Oct 03 15:09:47 Poll is at: http://www.doodle.com/6xgbkfevunrypyz3 Oct 03 15:10:39 I've emailed it, too. Oct 03 15:10:57 Let's work out the details via email during the week. Oct 03 15:11:14 Unless there's anything else to discuss at this time, I propose we adjourn. Oct 03 15:12:42 yeah Oct 03 15:13:20 agreed Oct 03 15:13:29 hmm. the poll doesn't have a timezone chooser this time, so I assumed it was showing me toronto time Oct 03 15:13:44 odd Oct 03 15:13:49 I selected 4pm-9pm Oct 03 15:14:51 That's Eastern time, right? Oct 03 15:15:22 Yes, I forgot to switch on the timezone. Oct 03 15:16:20 OK, so I'll email in a couple of days to confirm the day and time. And I'll speak to you all next weekend - probably Sunday. Oct 03 15:16:38 ok Oct 03 15:16:55 Bye! Oct 03 15:17:15 * philip_ (i=461d0df4@gateway/web/freenode/x-4a0aa0ddb05b97e3) has left #robocup Oct 03 15:18:20 bye everyone Oct 03 15:18:21 * yulia has quit ("Leaving") Oct 03 15:19:22 well i'm also heading out, was a good meeting, ttyl Oct 03 15:25:22 * unapiedra has quit (Read error: 113 (No route to host)) Oct 03 16:02:45 Python interface unloaded Oct 03 16:02:45 Tcl interface unloaded **** ENDING LOGGING AT Sat Oct 3 16:02:45 2009 **** BEGIN LOGGING AT Sat Oct 3 16:04:10 2009 Oct 03 16:04:10 * Now talking on #robocup Oct 03 16:04:10 * Topic for #robocup is: Inofficial RoboCup Channel | low traffic so feel free to contact any op directly Oct 03 16:04:10 * Topic for #robocup set by unapiedra at Wed May 20 13:05:54 2009