From gmane.20.evilspam at spamgourmet.com Sun Jul 9 22:35:25 2006 From: gmane.20.evilspam at spamgourmet.com (Chris Spencer) Date: Sun Jul 9 22:35:54 2006 Subject: [Pyro-users] Neural Net Usage Message-ID: Is the conx module designed for real-world applications, or just for research? After reading the tutorial, it seems really easy to design and train a network on a corpus of data, but I don't see how would you use the net by providing an input and extracting the output. Do you have to first clear the corpus, and then use setInputs() and sweep() to compute the output? Chris From dblank at brynmawr.edu Sun Jul 9 22:50:47 2006 From: dblank at brynmawr.edu (dblank@brynmawr.edu) Date: Sun Jul 9 22:50:46 2006 Subject: [Pyro-users] Neural Net Usage In-Reply-To: References: Message-ID: <38820.68.34.179.248.1152499847.squirrel@webmail.brynmawr.edu> > Is the conx module designed for real-world applications, or just for > research? After reading the tutorial, it seems really easy to design and > train a network on a corpus of data, but I don't see how would you use > the net by providing an input and extracting the output. Do you have to > first clear the corpus, and then use setInputs() and sweep() to compute > the output? Chris, Sure, conx, the neural network module in Pyro, can be used for real problems. It isn't as fast as a system coded up in C or C++, but it is quite flexible and runs fast enough. You can use it as you suggest, but you can also do something like: network.propagate(input = [0, 1, 1, 0, 1]) where input is the name of a layer. With patterns active, you can even do something like: network.propagate(input = "jim") If you have more than one input layer, you can list those as arguments to propagate. -Doug > Chris From fox at macalester.edu Mon Jul 10 13:19:49 2006 From: fox at macalester.edu (Susan Fox) Date: Mon Jul 10 13:17:33 2006 Subject: [Pyro-users] Cable to connect to Pioneer's camera for PTZ... Message-ID: <44B28C35.9010007@macalester.edu> An HTML attachment was scrubbed... URL: http://emergent.brynmawr.edu/pipermail/pyro-users/attachments/20060710/56e76b2f/attachment.htm From gmane.20.evilspam at spamgourmet.com Mon Jul 10 22:45:29 2006 From: gmane.20.evilspam at spamgourmet.com (Chris Spencer) Date: Mon Jul 10 22:45:32 2006 Subject: [Pyro-users] Re: Neural Net Usage In-Reply-To: <38820.68.34.179.248.1152499847.squirrel@webmail.brynmawr.edu> References: <38820.68.34.179.248.1152499847.squirrel@webmail.brynmawr.edu> Message-ID: dblank@brynmawr.edu wrote: >> Is the conx module designed for real-world applications, or just for >> research? After reading the tutorial, it seems really easy to design and >> train a network on a corpus of data, but I don't see how would you use >> the net by providing an input and extracting the output. Do you have to >> first clear the corpus, and then use setInputs() and sweep() to compute >> the output? > > Chris, > > Sure, conx, the neural network module in Pyro, can be used for real > problems. It isn't as fast as a system coded up in C or C++, but it is > quite flexible and runs fast enough. > > You can use it as you suggest, but you can also do something like: > > network.propagate(input = [0, 1, 1, 0, 1]) > > where input is the name of a layer. With patterns active, you can even do > something like: > > network.propagate(input = "jim") > > If you have more than one input layer, you can list those as arguments to > propagate. > > -Doug > >> Chris Thanks, that's exactly what I was looking for. I have a few more questions. Is there any way to add just one [input,target] pattern to a Network, or do you have to set all patterns at once? Does the Network class provide any protection against overfitting? I'm using a GA to breed some Network instances. What error (TSS, RMS, etc) is the best to use as a fitness measure? Chris From dblank at brynmawr.edu Tue Jul 11 11:10:17 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Tue Jul 11 11:10:19 2006 Subject: [Pyro-users] Cable to connect to Pioneer's camera for PTZ... In-Reply-To: <44B28C35.9010007@macalester.edu> References: <44B28C35.9010007@macalester.edu> Message-ID: <1152630617.9515.139.camel@mightymouse.brynmawr.edu> Susan, I don't have part numbers, and had the same problem ordering the cable. It may help to explain to them what you are attempting to do. (If any ActivMedia friends are on the list and can provide more detail, that'd be great). We want to control the PTZ through a serial port (so that we can use Player rather than Aria or Saphira). The serial port that is provided on the top or side of the Pioneer is not a generic Serial port (I don't think) but a way for a laptop to talk to the robot using a ActivMedia protocol. Saphira and Aria (I think) intermix the PTZ commands into their protocol. This method of talking to the PTZ is not available to Pyro without using Saphira or Aria, or interfacing with their protocol. Since Player supports the PTZ, we decided to stop supporting duplicate code. However, the Player group decided to not implement the ActivMedia protocol, and instead talk directly to the PTZ unit. So, this requires a real Serial port. ActivMedia doesn't have a real serial port exposed, so you need two things: 1.) a serial port extender that will plug into the mother board (a 20 pin flat, female connector on one end and two 9-pin males on the other). The one we got from them is about 12" long and has two 9-pin connectors with a rainbow colored ribbon. 2) a PTZ connector that has the camera plug on one end, and a 9-pin connector on the other. The one that we got is about 3' or 4' long. I'll add this to that page to better describe what one would need. -Doug On Mon, 2006-07-10 at 12:19 -0500, Susan Fox wrote: > > Hi, > > Can I get more details about the cable to connect from my PTZ camera > to /dev/ttyS1? I've read the section of the PyroInstallation page, > but it doesn't give enough details for me to describe what I need to > ActivMedia... > > This is a cable *in addition* to the ones that already connect the > camera to the onboard computer, that would plut into the *external* > serial port? The one on the microcontroller board? What *exactly* > would the other end look like. ActiveMedia suggested I needed a cable > that would connect to an internal serial port. I'm not sure *what* I > need from the description... > > Thanks, > > Susan Fox > -- > Susan Fox Associate Professor > Mathematics/Computer Science Macalester College > Office: (651) 696-6553 Fax: (651) 696-6518 > fox@macalester.edu http://www.macalester.edu/~fox > > _______________________________________________ > Pyro-users mailing list > Pyro-users@emergent.brynmawr.edu > http://emergent.brynmawr.edu/mailman/listinfo/pyro-users -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank From dblank at brynmawr.edu Tue Jul 11 11:21:16 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Tue Jul 11 11:21:14 2006 Subject: [Pyro-users] Re: Neural Net Usage In-Reply-To: References: <38820.68.34.179.248.1152499847.squirrel@webmail.brynmawr.edu> Message-ID: <1152631276.9515.150.camel@mightymouse.brynmawr.edu> On Mon, 2006-07-10 at 22:45 -0400, Chris Spencer wrote: > Thanks, that's exactly what I was looking for. I have a few more questions. > > Is there any way to add just one [input,target] pattern to a Network, or > do you have to set all patterns at once? Chris, You can train just one input/target pair using: network.step(input = [0, 1, 0, 1], output = [0, 1]) This doesn't add the pair to the corpus, but does train the network (as long as network.learning == 1). The input list is taken as a list of inputs, and the output list is taken as a list of targets, because the respective layers are of those types. > Does the Network class provide any protection against overfitting? You can use the cross validation to help with this problem. See the "Cross Validation" section on: http://pyrorobotics.org/?page=Conx_20Implementation_20Details I usually will create a cross validation data set, and then: network.setUseCrossValidationToStop(1) network.stopPercent = .85 this will stop when the network is getting 85% of the test data correct. You can also use the training data as the cross validation data with the network.setAutoCrossValidation(1). This is useful when network.batch == 1. > I'm using a GA to breed some Network instances. What error (TSS, RMS, > etc) is the best to use as a fitness measure? Interesting question; look forward to hearing the answer on that one! -Doug > Chris -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank From dblank at brynmawr.edu Tue Jul 11 11:26:35 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Tue Jul 11 11:26:32 2006 Subject: [Pyro-users] Re: Neural Net Usage In-Reply-To: <1152631276.9515.150.camel@mightymouse.brynmawr.edu> References: <38820.68.34.179.248.1152499847.squirrel@webmail.brynmawr.edu> <1152631276.9515.150.camel@mightymouse.brynmawr.edu> Message-ID: <1152631595.9515.155.camel@mightymouse.brynmawr.edu> On Tue, 2006-07-11 at 11:21 -0400, Douglas S. Blank wrote: > You can also use the training data as the cross validation data with the > network.setAutoCrossValidation(1). This is useful when network.batch == > 1. I should have said, "when network.batch == 0". That is, when you are updating the weights after every input/target pair, there could be a large difference in performance between the first seen pair and the last seen in a given epoch/sweep. -Doug -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank From breakthru at inwind.it Tue Jul 11 13:25:31 2006 From: breakthru at inwind.it (Marco GNULinux) Date: Tue Jul 11 13:23:56 2006 Subject: [Pyro-users] Cable to connect to Pioneer's camera for PTZ... In-Reply-To: <1152630617.9515.139.camel@mightymouse.brynmawr.edu> References: <44B28C35.9010007@macalester.edu> <1152630617.9515.139.camel@mightymouse.brynmawr.edu> Message-ID: <200607111925.31902.breakthru@inwind.it> You can have some details here: http://sourceforge.net/mailarchive/message.php?msg_id=9065509 controlling the PTZ from the computer-robot link was too slow, so they use another serial port to control only PTZ, that's why you need a cable for the serial port on the back of the camera. Regards, Marco Paladini. From gbisdale at hrl.com Thu Jul 13 13:25:06 2006 From: gbisdale at hrl.com (Jerry Isdale) Date: Thu Jul 13 13:25:17 2006 Subject: [Pyro-users] Pyrobot gets Slashdotted | Robots Coming to Intro Computer Science Classes Message-ID: <44B681F2.8020701@hrl.com> http://hardware.slashdot.org/hardware/06/07/13/010254.shtml Our Fearless Leader, Doug, has apparently been talking to the press about Microsoft funding Bryn Mawr and GATech's efforts to use Pyro for Intro CS classes. The story link got posted to Slashdot this am. Congrats Doug! From fox at macalester.edu Thu Jul 13 13:27:44 2006 From: fox at macalester.edu (Susan Fox) Date: Thu Jul 13 13:25:35 2006 Subject: [Pyro-users] Weird bug with behavior-based control stuff... Message-ID: <44B68290.70406@macalester.edu> An HTML attachment was scrubbed... URL: http://emergent.brynmawr.edu/pipermail/pyro-users/attachments/20060713/a9e9ff69/attachment.htm From dblank at brynmawr.edu Fri Jul 14 01:31:25 2006 From: dblank at brynmawr.edu (dblank@brynmawr.edu) Date: Fri Jul 14 01:31:26 2006 Subject: [Pyro-users] Weird bug with behavior-based control stuff... In-Reply-To: <44B68290.70406@macalester.edu> References: <44B68290.70406@macalester.edu> Message-ID: <54930.165.106.10.91.1152855085.squirrel@webmail.brynmawr.edu> Susan, I think your analysis is correct. That is, I think that you try to refer to the main brain object too soon when you try to load, and a subsequent reload is pointing to the old brain object. I've looked at the code, and it looks like that self.brain is set as soon as it can be (e.g., right after you add a behavior to the brain). But there is another method that may help in your program design: setup(). Each behavior has a setup() method that is called after the self.brain has been set. Maybe you can move some code out of the constructor (where I'm guessing the self.brain reference is crashing your program) into setup. If I am guessing wrong, this may not help. -Doug > I am experiencing a very strange phenomena, with a system that is built > on the behaviors-based control module.  At the moment I am running it > using the Stage simulator and the Player robot, because I want the code > I'm testing to run, eventually, on my Pioneer robot.
>
> The best way I can describe the problem is to say that it seems as if > the *behavior* objects in the system are referencing an older version > of the brain than the rest of the system.  (I am using state and > behavior classes that I have defined, and I have created my own > sublcass of the BehaviorBasedBrain class, just in case there are issues > there.)
>
> Here's what happens:
>
> The first time I load my brain file and then run it, it errors in a > behavior that needs to refer to the brain class, telling me that > self.brain is an int. Clearly, at that point, it hasn't been > initialized at all.
>
> When I reload the brain (without quitting out of pyrobot) and then run > it, then it seems to work more or less fine.  The behaviors all have > a > brain object to refer to.  However, when one of the states updates an > instance variable belonging to the current brain object, the behaviors > don't see it.  The *states* see the current brain object, but the > behaviors always seem to be one "load" behind the times.  The Brain > class contains a set of very important variables that influence the > states and behaviors, allowing information to pass from one > state/behavior to another.  I really need them all to be referring to > the same version of the brain, or nothing will work the way it should.
>
> Is this a pernicious bug, or is it something I might be able to fix by > the order in which files are imported?  The behaviors and states are > in > one file, and the brain is in another, and they do both import each > other...  Perhaps that is the root of the problem.  I hate to > stick > them all into one file, but I may have to try that.
>
> Any suggestions?
>
> Susan Fox Associate Professor > Mathematics/Computer Science Macalester College > Office: (651) 696-6553 Fax: (651) 696-6518 From dblank at brynmawr.edu Sat Jul 15 11:30:58 2006 From: dblank at brynmawr.edu (dblank@brynmawr.edu) Date: Sat Jul 15 11:31:03 2006 Subject: [Pyro-users] Pyrobot gets Slashdotted | Robots Coming to Intro Computer Science Classes Message-ID: <6324.68.34.179.248.1152977458.squirrel@webmail.brynmawr.edu> > http://hardware.slashdot.org/hardware/06/07/13/010254.shtml > > Our Fearless Leader, Doug, has apparently been talking to the press about Microsoft funding Bryn Mawr and GATech's efforts to use Pyro for Intro CS classes. The story link got posted to Slashdot this am. > > Congrats Doug! Thanks, Jerry! Yes, it is true: Bryn Mawr and GATech will be teaming up with Microsoft to host an Institute for Personal Robots in Education. This is an interesting development, and may raise some questions for the Pyro community: Q: Is this the end of Pyro? A: No, not at all. But there will be a new project, tentatively called "Myro" that will take many ideas from Pyro, and adapt them for a CS1 and CS2 environment. Pyro will continue to be developed for many years to come. But I do see us transitioning over to Myro down the road. Q: Does this mean we'll have to use Windows to use Myro? A: No. Myro will be written in .NET, which is a technology developed by Microsoft. It is a virtual machine, much like Java's. But there is another implementation of .NET for other operating systems, called Mono. On the other hand, Myro will also take advantage of Microsoft's new Robotics Studio, if you have it. Q: I like Python, though! I don't even know C#! A: That's not a question. Anyway, because Myro will be written in the .NET framework, you'll be able to use languages other than Python. But you'll still be able to use Python, too. There is a very nice project from Microsoft called IronPython. It is "shared source" (similar to BSD, I think) and also runs in Mono. You'll also be able to mix languages, if you want. Vision in Lisp, control in Python, logic in C#. Also, all of the code will be in one framework. Currently, we have code in C++ that is wrapped by SWIG to make it available to Python. In .NET, all of the code will all be in the same system. And it could be faster to boot. Q: Will Myro be backwards compatible with Pyro? A: Probably not. We've learn much about designing a robot control system from building Pyro, and, when we re-implement it in .NET, we'll fix what's broken. Some code probably won't change much at all, though. Q: Will Myro only work with this little robot that you are developing? A: No. We are planning that Myro will span the spectrum of robots. But this little, low-cost robot that we are developing is designed so each student can have their own robot. The idea is that you'll by it from the bookstore like a book, and it will cost about as much as a book. We hope that it will come in a shrink-wrapped, ready to use box. Q: What is the Microsoft Robotics Studio? A: Microsoft's new Robotics Studio is a sophisticated framework for advanced robotics. You can think of it as an "operating system" for robots. It is currently free, runs under Windows, and comes with very nice 3D simulator. The main framework is written to run under .NET, so that means that it, too, could run on other operating systems under Mono. Q: So what should I do to prepare for Myro? A: Nothing yet. We are a year away from even thinking about transitioning to Myro. But, we will offer an intro CS1 course at Bryn Mawr College and GATech using a prototype of the software, hardware, and courseware. We hope that Myro will span its usage from the intro course on up through more advanced robotics than what even Pyro covers today. Q: Will Myro be developed differently from the way that Pyro was? A: Yes and no. Pyro was very "ad hoc" in its development. We basically hacked uses in as we thought of them. We didn't have regression or unit testing, and didn't have any contracts (Thanks, Jerry!). This time around, we will do some serious planning ahead. But Pyro made it possible so that we will know what we are doing this time. On the other hand, we will develop Myro with a community, in the open, as before. That's it for now. If you have other questions, please don't heitate to ask. Now, it's time for a birthday party! AI turns 50 years old today. Did you get it a present? If any of you are going to be at AAAI next week, I'll see you there. -Doug From gmane.20.evilspam at spamgourmet.com Sat Jul 29 15:52:16 2006 From: gmane.20.evilspam at spamgourmet.com (Chris Spencer) Date: Sat Jul 29 15:53:03 2006 Subject: [Pyro-users] Re: Pyrobot gets Slashdotted | Robots Coming to Intro Computer Science Classes In-Reply-To: <6324.68.34.179.248.1152977458.squirrel@webmail.brynmawr.edu> References: <6324.68.34.179.248.1152977458.squirrel@webmail.brynmawr.edu> Message-ID: dblank@brynmawr.edu wrote: >> http://hardware.slashdot.org/hardware/06/07/13/010254.shtml >> >> Our Fearless Leader, Doug, has apparently been talking to the press > about Microsoft funding Bryn Mawr and GATech's efforts to use Pyro for > Intro CS classes. The story link got posted to Slashdot this am. >> Congrats Doug! > > Thanks, Jerry! Yes, it is true: Bryn Mawr and GATech will be teaming up > with Microsoft to host an Institute for Personal Robots in Education. This > is an interesting development, and may raise some questions for the Pyro > community: [snip] Although I'm not an anti-Microsoft zealot, shifting to a dependence on .Net and their proprietary Robotics Studio gives me pause. One of the aspects I really love about Pyro is its openness. I can easily use it with scores of other Python libraries, such as ZODB and Twisted. Pyro also allows easy use of the Player/Stage/Gazebo simulators, which are still young but quickly maturing, and taking advantage of other open source technologies such as the Open Dynamics Engine. It's great you still intend to keep the development process open, but I'm concerned with how easy that will be when your foundational dependencies are inherently un-open? Regards, Chris From dblank at brynmawr.edu Sat Jul 29 18:13:34 2006 From: dblank at brynmawr.edu (dblank@brynmawr.edu) Date: Sat Jul 29 18:13:25 2006 Subject: [Pyro-users] open concerns and concerns of openness Message-ID: <2204.68.34.179.248.1154211214.squirrel@webmail.brynmawr.edu> > dblank@brynmawr.edu wrote: >>> http://hardware.slashdot.org/hardware/06/07/13/010254.shtml >>> >>> Our Fearless Leader, Doug, has apparently been talking to the press >> about Microsoft funding Bryn Mawr and GATech's efforts to use Pyro for >> Intro CS classes. The story link got posted to Slashdot this am. >>> Congrats Doug! >> >> Thanks, Jerry! Yes, it is true: Bryn Mawr and GATech will be teaming up >> with Microsoft to host an Institute for Personal Robots in Education. >> This >> is an interesting development, and may raise some questions for the Pyro >> community: > [snip] > > Although I'm not an anti-Microsoft zealot, shifting to a dependence on > .Net and their proprietary Robotics Studio gives me pause. One of the > aspects I really love about Pyro is its openness. I can easily use it > with scores of other Python libraries, such as ZODB and Twisted. Pyro > also allows easy use of the Player/Stage/Gazebo simulators, which are > still young but quickly maturing, and taking advantage of other open > source technologies such as the Open Dynamics Engine. It's great you > still intend to keep the development process open, but I'm concerned > with how easy that will be when your foundational dependencies are > inherently un-open? Chris, Thanks for your thoughts on the matter. You may have stated what many people are secretly thinking. But before you abandon Pyro, or even consider doing so, give this new project a chance. Let me take off my Institute hat for a moment, and make a couple of points as just a technology watcher. .NET is a very interesting technology in and of itself (as is Java). But if Windows was the only operating system that could run it, we wouldn't consider using it. But there is Mono (http://mono-project.com/Main_Page). Mono is a controversial project, but I don't think that very many people understand it. I think it will be big. I have used Linux since before version 0.99, and have a pretty good sense of where the technology is headed. I was an early proponent of Python in robotics and in education. I think you'll see .NET-related technologies in the next waves of technology adoption. Microsoft (marketing) has happily blurred the line between what .NET is and what it isn't, as Sun has with Java. After all, Java is a syntax, a virtual machine, and a compiler. You might be surprised to hear that there are over 200 systems that compile to the Java virtual machine (http://www.robert-tolksdorf.de/vmlanguages.html). That was a lost opportunity by Sun. What if a particular virtual machine became standard across all operating systems? This would be a great move for Microsoft, because the underlying Windows operating system could change without harming the higher level, which should make such systems more stable. This would be great move for computer science because all of the systems that ran on the VM would always be usable (assuming that the VM was ported across platforms). I think you'll see more programs like Beagle (http://beagle-project.org/Main_Page). If you haven't tried it yet, try Fedora Core 5, or another distro with Beagle. Let me make one aspect very clear: Myro will not be dependent on the Robotics Studio. The Robotics Studio is a sophisticated application that is not appropriate for our vision of CS1. Neither is MS Studio for that matter. In fact, Myro core won't be dependent on much of anything. It will be os, hardware, and even language agnostic. I hope that it will also work with Player/Stage eventually. Our job at the Institute will be to promote resources for robotics and education. It is about having more choices, not competing with other hardware or software projects. The main goal is to build up the pipeline of students interested in CS, and help keep the students in the field. But, don't believe me. Just wait and see! If any of you would like more information, email me off-list and we can talk there (or on a Myro-specific list). -Doug > Regards, > Chris From w.richert at gmx.net Mon Jul 31 05:26:49 2006 From: w.richert at gmx.net (Willi Richert) Date: Mon Jul 31 05:26:47 2006 Subject: [Pyro-users] Using pyrobotics with Player 2.0.2 Message-ID: <200607311126.49909.w.richert@gmx.net> Hi, after updating to Player 2.0.2 I cannot use my Stage simulation any more. What I get is: $ python BrainRunner.py Pyrobot Player: hostname= localhost port= 6665 Trying to connect... At the Player side I get: player config/room-inverted.cfg * Part of the Player/Stage/Gazebo Project [http://playerstage.sourceforge.net]. * Copyright (C) 2000 - 2006 Brian Gerkey, Richard Vaughan, Andrew Howard, * Nate Koenig, and contributors. Released under the GNU General Public License. * Player comes with ABSOLUTELY NO WARRANTY. This is free software, and you * are welcome to redistribute it under certain conditions; see COPYING * for details. trying to load /home/wr/forschung/software/tobd/config/libstageplugin... trying to load /usr/local/lib/libstageplugin... success invoking player_driver_init()... Stage driver plugin init ** Stage plugin v2.0.2 ** * Part of the Player/Stage Project [http://playerstage.sourceforge.net] * Copyright 2000-2006 Richard Vaughan, Andrew Howard, Brian Gerkey * and contributors. Released under the GNU General Public License v2. success Stage driver creating 1 device 6665.31.0 is a Stage world [Loading config/room-inverted.world][Include pioneer.inc][Include map.inc] X Error: BadDevice, invalid or uninitialized input device 168 Major opcode: 145 Minor opcode: 3 Resource id: 0x0 Failed to open device X Error: BadDevice, invalid or uninitialized input device 168 Major opcode: 145 Minor opcode: 3 Resource id: 0x0 Failed to open device warn: worldfile config/room-inverted.world:82 : property [laser_data] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:83 : property [ranger_data] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:75 : property [gui_boundary] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:36 : property [gui_boundary] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:52 : property [polygon[0].filled] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:46 : property [sview[0]] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:47 : property [sview[1]] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:64 : property [ssize[0]] is defined but not used (worldfile.cc WarnUnused) warn: worldfile config/room-inverted.world:65 : property [ssize[1]] is defined but not used (worldfile.cc WarnUnused) Stage driver creating 4 devices 6665.4.0 is "red" 6665.6.0 is "red.laser:0" 6665.10.0 is "red.laser:0.fiducialfinder:0" 6665.5.0 is "red.ranger:0" Listening on ports: 6665 accepted client 0 on port 6665, fd 9 That happens with pyrobot-4.8.2 and also with the cvs version. Regards, wr PS: How can I search in the mails of this list? In the Pyro-users Archives that's not possible. From w.richert at gmx.net Mon Jul 31 07:50:00 2006 From: w.richert at gmx.net (Willi Richert) Date: Mon Jul 31 07:49:52 2006 Subject: [Pyro-users] curcularlist.py does not work for current ravq.py Message-ID: <200607311350.00947.w.richert@gmx.net> Hi Doug, you changed circularlist as an response to my bug report at http://www.mail-archive.com/pyro-developers%40emergent.brynmawr.edu/msg00010.html Unfortunately, the yield-thing interferes with the ravq.py in CVS. The line for m in self.models: in ravq.py:updateWinner() keeps on returning empty CircularLists forever. The problem seems to be in ravq.py:ModelList:addItem: def addItem(self, vector): tmp = CircularList(self.bucketSize) tmp.vector = vector tmp.counter = 0 CircularList.addItem(self, tmp) Thereby, an model vector itself is added inside a CircularList to the model vector's CircularList. This makes trouble, if the line "for m in self.models:" is invoked and asks for "if len(self.contents) == 0:" in CircularList.nextItem(): self.contents at that time contains an empty CircularList, so that nextItem() never stops. As I do not know the idea behind wrapping each model vectors inside a CircularList, I cannot provide any bugfix. I have attached the test file. With ravq.py and circularlist.py from the provided tar file it works. Kind regards, wr -------------- next part -------------- A non-text attachment was scrubbed... Name: RAVQTest.py Type: application/x-python Size: 290 bytes Desc: not available Url : http://emergent.brynmawr.edu/pipermail/pyro-users/attachments/20060731/cf44edea/RAVQTest.bin From kenrobinsonster at gmail.com Mon Jul 31 10:27:57 2006 From: kenrobinsonster at gmail.com (Ken Robinson) Date: Mon Jul 31 11:03:01 2006 Subject: [Pyro-users] Pyro robotics Message-ID: Hi, I need to use a java package for what I need to do but am using jython for more rapid prototyping. Can you tell me what parts of pyro robotics I can use in jython. Is there some howto on implementing a brain. Ken Robinson From dblank at brynmawr.edu Mon Jul 31 21:53:37 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Mon Jul 31 21:53:47 2006 Subject: [Pyro-users] Pyro robotics In-Reply-To: References: Message-ID: <1154397217.16234.156.camel@mightymouse.brynmawr.edu> On Tue, 2006-08-01 at 00:27 +1000, Ken Robinson wrote: > Hi, > I need to use a java package for what I need to do but am using jython > for more rapid prototyping. Can you tell me what parts of pyro > robotics I can use in jython. Is there some howto on implementing a > brain. > > Ken Robinson Ken, That's a good question. I've only barely looked at Jython, but suspect that there would be many things in Pyro that would need to be changed to work with it. You could use SWIG to wrap your Java code, and then it would be available in CPython, perhaps. What Java package do you need that there isn't a replacement in Python? We are planning a rewrite in .NET, which might let J# work with Pyro classes. But that won't be ready for a few months. You can find a brain howto here: http://pyrorobotics.org/?page=PyroModuleDirectControl -Doug > _______________________________________________ > Pyro-users mailing list > Pyro-users@emergent.brynmawr.edu > http://emergent.brynmawr.edu/mailman/listinfo/pyro-users > -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank From dblank at brynmawr.edu Mon Jul 31 22:26:07 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Mon Jul 31 22:26:18 2006 Subject: [Pyro-users] curcularlist.py does not work for current ravq.py In-Reply-To: <200607311350.00947.w.richert@gmx.net> References: <200607311350.00947.w.richert@gmx.net> Message-ID: <1154399167.16234.162.camel@mightymouse.brynmawr.edu> On Mon, 2006-07-31 at 13:50 +0200, Willi Richert wrote: > you changed circularlist as an response to my bug report at > http://www.mail-archive.com/pyro-developers% > 40emergent.brynmawr.edu/msg00010.html > > Unfortunately, the yield-thing interferes with the ravq.py in CVS. The > line > > for m in self.models: > > in ravq.py:updateWinner() keeps on returning empty CircularLists > forever. [snip] Sorry! I know I tested that. So either I really wasn't testing the changed version, or I am insane. Or both. :) If you change pyrobot/brain/ravq.py __iter__ method to: def __iter__(self): for c in self.contents: yield c then it will work again. Fixed in CVS. Sorry, and thank you, -Doug > Kind regards, > wr -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank From dblank at brynmawr.edu Mon Jul 31 22:28:23 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Mon Jul 31 22:28:33 2006 Subject: [Pyro-users] Using pyrobotics with Player 2.0.2 In-Reply-To: <200607311126.49909.w.richert@gmx.net> References: <200607311126.49909.w.richert@gmx.net> Message-ID: <1154399303.16234.166.camel@mightymouse.brynmawr.edu> On Mon, 2006-07-31 at 11:26 +0200, Willi Richert wrote: > Hi, > > after updating to Player 2.0.2 I cannot use my Stage simulation any more. What > I get is: Yep, Pyrobot isn't quite finished for use with Player 2.0.2... getting closer... When Pyrobot version 5.0 is released, it will be Player/Stage 2.0 and Gazebo 0.6 compatible. We'll announce that here when ready. -Doug > $ python BrainRunner.py > Pyrobot Player: hostname= localhost port= 6665 > Trying to connect... > > At the Player side I get: > player config/room-inverted.cfg > > * Part of the Player/Stage/Gazebo Project > [http://playerstage.sourceforge.net]. > * Copyright (C) 2000 - 2006 Brian Gerkey, Richard Vaughan, Andrew Howard, > * Nate Koenig, and contributors. Released under the GNU General Public > License. > * Player comes with ABSOLUTELY NO WARRANTY. This is free software, and you > * are welcome to redistribute it under certain conditions; see COPYING > * for details. > > trying to load /home/wr/forschung/software/tobd/config/libstageplugin... > trying to load /usr/local/lib/libstageplugin... > success > invoking player_driver_init()... > Stage driver plugin init > > ** Stage plugin v2.0.2 ** > * Part of the Player/Stage Project [http://playerstage.sourceforge.net] > * Copyright 2000-2006 Richard Vaughan, Andrew Howard, Brian Gerkey > * and contributors. Released under the GNU General Public License v2. > success > Stage driver creating 1 device > 6665.31.0 is a Stage world [Loading config/room-inverted.world][Include > pioneer.inc][Include map.inc] > X Error: BadDevice, invalid or uninitialized input device 168 > Major opcode: 145 > Minor opcode: 3 > Resource id: 0x0 > Failed to open device > X Error: BadDevice, invalid or uninitialized input device 168 > Major opcode: 145 > Minor opcode: 3 > Resource id: 0x0 > Failed to open device > warn: worldfile config/room-inverted.world:82 : property [laser_data] is > defined but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:83 : property [ranger_data] is > defined but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:75 : property [gui_boundary] is > defined but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:36 : property [gui_boundary] is > defined but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:52 : property [polygon[0].filled] > is defined but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:46 : property [sview[0]] is defined > but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:47 : property [sview[1]] is defined > but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:64 : property [ssize[0]] is defined > but not used (worldfile.cc WarnUnused) > warn: worldfile config/room-inverted.world:65 : property [ssize[1]] is defined > but not used (worldfile.cc WarnUnused) > > Stage driver creating 4 devices > 6665.4.0 is "red" > 6665.6.0 is "red.laser:0" > 6665.10.0 is "red.laser:0.fiducialfinder:0" > 6665.5.0 is "red.ranger:0" > Listening on ports: 6665 > accepted client 0 on port 6665, fd 9 > > > That happens with pyrobot-4.8.2 and also with the cvs version. > > Regards, > wr > > PS: How can I search in the mails of this list? In the Pyro-users Archives > that's not possible. > _______________________________________________ > Pyro-users mailing list > Pyro-users@emergent.brynmawr.edu > http://emergent.brynmawr.edu/mailman/listinfo/pyro-users > -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank From dblank at brynmawr.edu Mon Jul 31 22:32:40 2006 From: dblank at brynmawr.edu (Douglas S. Blank) Date: Mon Jul 31 22:32:50 2006 Subject: [Pyro-users] curcularlist.py does not work for current ravq.py In-Reply-To: <1154399167.16234.162.camel@mightymouse.brynmawr.edu> References: <200607311350.00947.w.richert@gmx.net> <1154399167.16234.162.camel@mightymouse.brynmawr.edu> Message-ID: <1154399560.16234.172.camel@mightymouse.brynmawr.edu> On Mon, 2006-07-31 at 22:26 -0400, Douglas S. Blank wrote: > If you change pyrobot/brain/ravq.py __iter__ method to: > > def __iter__(self): > for c in self.contents: > yield c > That should be: change pyrobot/tools/circularlist.py __iter__ method to the above. I am insane. -- Douglas S. Blank Computer Science Assistant Professor Bryn Mawr College (610)526-6501 http://cs.brynmawr.edu/~dblank