[Home]DouglasReay/HumanSwarms

ec2-44-222-82-119.compute-1.amazonaws.com | ToothyWiki | DouglasReay | RecentChanges | Login | Webcomic

Human Swarms



First some concepts and links, then the big idea



Concepts and Links



Lego



Everyone likes lego.  Especially kids.  Coloured plastic blocks in a few simple shapes that can be snapped together to create a wide variety of larger more complex objects.

Robots



Kids also like robots.  They're cool, and they do stuff so you don't have to.  [Robot Olympiad]

Robots made of lego



Totally cool.  There's [Lego Mindstorms], [Lego WeDo] and many home-brewed hybrids such as [LegoBot].  ([another WeDo page])

Robots that make things out of lego



Yotto Koga's [Brick Bot]

Swarmnoids



Here's a YouTube? video showing them in action: [Swarmnoids, the movie].  Robots don't have to be highly complex.  You can achieve the same things using a group of simpler robots that collaborate.  And they can be simpler still if they are not all identical.  ([project home page])

Swarmnoid robots made out of lego



Most of the basic swarmnoid functionality can be re-created using robots made out of lego.  Here are some examples: [lego hand and foot bots]

Networked Games Consoles



Games Consoles such as the Xbox try, as much as possible, to integrate social network like software that gets users online and playing against or collaborating with each other.

Kinect



The [Kinect] is a sensor add-on for Microsoft's Xbox game console that can track the position and movement of objects and individuals in 3D using infrared and sound.  It has everything needed to be an eye bot, except for the flying which (while very cool) is unnecessary.

Digital Design



The "CAD" part of "CADCAM".  A Virtual Reality that allows you to design 3D objects using a computer.

Lego Digital Design



A program that lets you design lego constructions in VR, and which will then print out a parts list and plans for you: the [Lego Digital Designer].  Great for collaboration.

Program Digital Design



Just as lego is physical 'drag and drop', and digital design allows you to design physical things using virtual 'drag and drop', there are computing languages which allow you to construct programs using conceptual 'drag and drop', such as: [Scratch, for the OLPC].  Also known as [Visual Programming Language].  Most are 2D but some are 3D: [Alice]

Logo



A simple computer language designed to teach kids programming and geometric shapes: [Logo]

Logo Turtle



A physical robot that mirrors the movement of the logo's virtual cursor in reality, drawing a coloured line on paper if it is given a pen.  These turtle robots can be constructed from lego.

Sense



[Sense] is a visual programming language used by Britain's Open University that evolved from [Scratch], and which contains many features in common with Logo.  ([an account of using Sense])

Controlling lego robots using Scratch



[YouTube video showing scratch + lego robots] on the OLPC, and [more on OLPC + lego]

Augumented Reality



There's a lovely science fiction story, I think by Bruce Sterling, which included a scene in which a house is being constructed by a group of people who don't know how to build houses.  But they're wearing VR goggles and gloves, all the bricks and materials are RFID tagged, and they're following a virtual plan that tells each participant what to put where next.  Think of [Improv Everywhere's mp3 experiments] but with each participant being controlled by their own coordinated track.  There's a storage system in [Cory Doctorow's Makers] that talks more about RFID object awareness.  But, on a smaller scale, the same thing could be done via the Kinect, just via 3D object recognition and tracking.  ([are events], [make blog])

Mobs



[Smart mobs] and [flash mob super computing]

Unconferences



[Bar Camp] is a [Unconference] alternative to meets such as [Foo Camp].  There are conferences and unconferences specifically aimed at kids, such as [HacKid] and [TedXyouth].  See specifically [kids visual programming and robot conference]





The Big Ideas



Physical Visual Programming



Instead of using a mouse to move a cursor on a screen that drags a 2D (or 3D) sprite in order to do visual programming, have the person physically move a physical wooden or plastic block on a 2D (or 3D) surface.  Click the blocks together to form the program.  Tap a block to start it running at that point.  Set break points and trace values by clipping on small 1x1x1 blocks to appropriate points.  Make use of colour as well as shape.  Use children's wooden stacking blocks (the sorts that have numbers and letters on the faces) to represent numbers and free text in the program.  Use a camera to read in the physical program into the computer the program will run on (or, if you have smart blocks, they are aware of their own position and can transmit it or are even the computer itself, in distributed form, but a camera is cheaper).  Use a projected overlay or have the 2D surface you're putting blocks on be tiled ipads to provide feedback (such as guidance, templates for pre-written programs or saved versions, debug feedback, etc).

Human Swarms



Think of a human (adult or kid) as being just another swarmnoid.  Give them an iphone or ipad with an earpiece to give them feedback (either verbal directions, like in the mp3 experiments, or visual directions on their location-aware iphone display).  Let them subscribe to a virtual plan or activity being carried out in their location to get a list of possible tasks which they can accept and carry out - just another specialist robot able to do the specified task (eg carry a hand robot over to a particular location, take a photo from a certain position and angle, fit two blocks together, etc).

Physical Visual Programming allows programming to become just another task that robots, either lego or human ones, can collaborate in carrying out (a task might be to assemble a subroutine to achieve a particular logo graphical task, to test and confirm someone else's subroutine does what it is intended to do, or just fit together a physical program according to a pre-written virtual one).

Human Swarm Flash Mob or Conference



People turn up at large empty indoor space (eg a sports hall) with plenty of power sockets and net connectivity.  They are carrying iphone, ipads, xboxes and kinects, OLPC laptops, computers, web cams, bags of kids alphabet blocks, lego, lego mindstorms and lego WeDo? kits.  At the door they're met by a greeter who helps them log and tag their equipment (so they leave with the same stuff they entered with), and who certifies by visual inspection which person is associated with which equipment.  A barcode readable namebadge with an event-generated userid, a txt message to their phone with an initial login to the event server, and they're off.

The event server has a virtual plan of the space, and tracks everything in the physical space via camera to keep the two in correspondance.  The virtual space has additional information, such as dividing the space up into 'rooms' and the event into 'timeslots'.  People propose activities for timeslots which others can subscribe to and rooms of an appropriate size can be reserved.  And virtually expanded or moved if that turns out to be later desirable and possible.  Little robots (or kids) subscribe to a task setting out purple coloured blocks as 'walls' that physically mark out the specified room on the floor of the physical space.

People can specifiy their virtual inventory of stuff they brought into different security categories such as "mine only, warn others not to touch or approach, and warn me if the do", "mine, but I'll consider requests to borrow it from specific individuals, if it stays in a particular room" or "communal".

Activities could include workshops "block programming for beginners", "robot construction for beginners"; games; competitions; fun/artistic/freeplay; serious academic stuff; "create a physical model of venice from this virtual plan, all robot and human aid welcomed"; creche (children can be tracked, and the parents not only notifed of location and given a live video stream of their child from anywhere within the space, they can also follow on audio and chat to the creche staff and other parents, as well as terminate or restrict the activities their child can choose or has chosen).

And of course all the other normal unconference or foo camp stuff such as live blogging and a twitter wall behind presenters could be done as well.  But with added robots!  Think of sending a robot to find someone and present them with a hand crafted 144 character message.  Think of how self-modifying such conferences could be, with people at the conference working on improving the robots and programming for the next conference to do such tasks as a robot speaker presenting a pre-written talk, a robot entrance greeter and logger, a robot who can use physical trial and error to construct simple programming tasks (given automated testing of whether the program is valid and whether it achieves the set task).

Distributed Swarm



And why limit it to one physical location?  Hold simultaneous conferences in two different cities.  Entries for competitions physically designed in one location are scanned into the shared virtual space and then physically mirrored back into the other.  Collaborative programming can be done with teams in seperate cities working on different subroutines just as easily as between teams in different 'rooms' in the same space, as the communication is via net comms.  Participants don't even need to be in a physical space - everything bar the actual physical robot construction can be done virtually too, using a mouse, which means people can join in from home, or continue working together on projects between conferences.



Feedback



Sounds like a fun event. I wouldn't have much of the hardware to contribute, unfortunately, although what I do have I'd be happy to mark "communal". But I'd like to go along if there'd be enough people bringing hardware to reach critical mass. --AlexChurchill

{your thoughts go here}



See also: [DouglasReay/HumanSwarms2] [DouglasReay/HumanSwarms3] [DouglasReay/HumanSwarms4] [DouglasReay/HumanSwarms5]
CategoryComputing

ec2-44-222-82-119.compute-1.amazonaws.com | ToothyWiki | DouglasReay | RecentChanges | Login | Webcomic
Edit this page | View other revisions | Recently used referrers
Last edited August 8, 2018 11:05 am (viewing revision 10, which is the newest) (diff)
Search: