Saturday, 20 August 2016

LEGO Mindstorms: Serious Play with Toy Robots.

Do you remember whiling away the hours playing with Lego bricks as a child? I do! On my 10th birthday, my mother took me to the famous Hamleys Toy Store, Regent Street, London. Where she bought me a huge box of Lego. To say I was hooked, is the least of it.

Well, things have not stood still for Lego since the early 1970s. Lego has become intelligent! And for the aspiring Robotologist; or indeed, budding Robotics design/industrial engineer, they would not go that far wrong by learning the elementary ropes with a range of intelligent Lego sets called ‘Mindstorms.’

One thing is rock sure, that young people today – that is tots and teens and adolescents – will be swamped in Robot technologies 10 years from now (2025). A child going through his education; or indeed a young adult going through college education without any engagement with and/or learning about Robot technologies is the equivalent of not learning to write in their native language; or indeed ignoring the universal language of mathematics. They just will not cut it in the future of work (as I will explain later in this book).

Even for me, more than halfway through my career, I am having to start a new engineering apprenticeship in Robotics and Artificial Intelligence (and Biotechnology and Nanotechnology).

Lego Mindstorms is a sequence of toy kits that include hardware and software that allows the would-be Robotist to build a vast array of customisable, programmable toy Robots out of a combination of traditional Lego bricks and advanced Lego components.

Beginners can manipulate intelligent Lego-brick computers that command the systems; attach sets of modular sensors and servo motors; and click together Lego parts from the Technic line (such as gears, axles, beams, and pneumatic parts), to tailor mechanically unique Robot systems. Mindstorms, as the name suggests, is both fun and taxing to learn.

Mindstorms can be used to build a model of embedded systems with computer-controlled electromechanical parts. Many types of real-world embedded systems, from programmable vehicles; devise controllers for miniature elevators, carrousels, conveyors, and rotary systems; to mock industrial Robots; can be put together with Mindstorms.

Mindstorms is primarily a recreational toy. Little’ens are fascinated by it. But it is much more than time killing amusement. It is in fact a highly addictive learning and discovery tool. Various kits are sold and used as educational tools. Where the academic version is called 

Lego Mindstorms for Schools, and comes with the programming software.
For youngsters, the Lego software is fairly easy to learn, and more than enough to get to grips with the basics. But for the inquisitive 20/30/40+ something, the Lego software can be up-graded with third party firmware and/or programming languages; including some of the most popular ones used by professionals in the embedded systems industry. Java and C for example.

The only difference between the educational series, known as the ‘Challenge Set’, and the consumer series, known as the ‘Inventor Set,’ is that the education set includes more touch sensors and several more gearing options. Opening up the prospect for more adventurous Robot projects.

As I said, reading this right now, might seem that Lego Mindstorms is a past-time toy, to occupy inquisitive young minds. But Mindstorms is the result a LEGO and Massachusetts Institute of Technology (MIT) Media Lab joint venture. To bring LEGO-based educational products to market based on leading-edge and highly effective ‘constructivist’ learning methodologies.

Lego Mindstorms has been named after the 1980 book, Mindstorms: Children, Computers, and Powerful Ideas; by Seymour Papert. Papert proposed a unique computer-based learning environment called, ‘Microworld.’ His primary belief about the Microworld's design is that it complements the natural knowledge building mechanisms of children, known as a constructivist approach to knowing and learning.

His primary implication is that Microworld learning profoundly affects the quality of knowledge gained. This work is one of the first large-scale attempts to mediate educational computer-based technology with Piagetian-based theories (just below) of learning and knowing.

Papert timing could not be better, having been at the centre of three learning revolutions: child development psychology, artificial intelligence, and computational technologies for education.

His fundamental research on applied human-and-machine intelligence and cognition has touched children around the world. For those in the know, it is difficult to envision a school Robotics subculture without Papert. Or for that matter, most of technology-enabled project-
based learning.

Born in 1928 in Pretoria, South Africa, eventually a philosophy student at South Africa’s University of Witwatersrand, where he received a doctorate in mathematics in 1952. As part of his doctoral work, Papert had spent time at the Henri PoincarĂ© Institute at the University of Paris. It was in Paris that he would meet the renowned Jean Piaget; the original architect of the theory of cognitive development stage theory: a comprehensive thesis of the nature and development of human intelligence. Piaget held that one's childhood plays a vital and active role in cognitive development. But, in fact, it deals with the nature of knowledge itself and how humans come gradually to acquire, construct, and use it.

Another influential chance meet-up, came at the 1960 symposium on Information Theory, London. Where Papert bumped into the marvellous Marvin Minsky (Don Professor of AI, at MIT); whereby they both coincidentally presented papers on a similar theorem.
Later in close partnership with Marvin Minsky, Papert became co-founder of MIT’s Artificial Intelligence Lab. Further, ‘Perceptrons,’ the groundbreaking 1970 book co-authored by Minsky and Papert, was possibly the first look at AI to gain widespread notice beyond domain experts.

Papert crafted ‘Logo,’ a revolutionary programming language, the first designed expressly for use by children, at a time when computers used to fill entire rooms and were impossibly complicated.

Papert’s vision was that children should be programming the computer rather than being programmed by it. In 1970, Papert convened a symposium at MIT called ‘Teaching Children Thinking;’ where he laid out his case for children teaching computers.

This radical idea would float around for nearly two decades before digital tools would become commonplace in the classroom. And yet to this day, there is still a great gap between paradigms: Is the machine driving the child or vice versa?

Its applications to learning and teaching in 2015+ are no less than startling. Mindstorms ranks in the top 10 education books I have read. It describes not just how children develop intellectually, but frames the role that educational technology plays in teaching and learning.

Millions of kids are now being exposed to advanced ideas and technologies such as Robotics, Multi-agent Modelling, Systems Dynamics, and Digital 3D Printing. The Lego company is transforming many of these ideas into their products under the title ‘Mindstorms,’ in honour of Papert.

From his book, Mindstorms:

‘Many children are held back in their learning because they have a model of learning in which you have either “got it” or “got it wrong.” But when you program a computer you almost never get it right the first time.
Learning to be a master programmer is learning to become highly skilled at isolating and correcting bugs ...
The question to ask about the program is not whether it is right or wrong, but if it is fixable. If this way of looking at intellectual products were generalized to how the larger culture thinks about knowledge and its acquisition we might all be less intimidated by our fears of “being wrong.'

Papert was perhaps the first interaction designer especially concerned with digital tools and children. His awareness that children effectively think differently than adults, and that their cognitive evolution requires designing rich toolkits and environments rather than force-feeding knowledge, has set the tone for decades of research.

And now, the rich form of constructivist learning is literally being embedded in Lego Mindstorms.

Lego Mindstorms Robotics activities are concrete, contextualized, and provide immediate feedback – important factors in satisfying a student’s desire for success and creating the motivation to continue learning. Students also learn about the Robotics technologies themselves, which impact all modern industries, from agriculture to healthcare, banking, manufacturing, transportation, energy, and security.

The Introduction to Programming curriculum is just that: an overture. For many teachers – and why it is important – it will be their first experience at instructing Robotics and Programming. However, the Robotics Academy has plenty of free resources on its website and regularly offers teacher courses.

The first generation of Lego Mindstorms was built around a brick known as the RCX (Robotic Command eXplorers). It contained an 8-bit Hitachi-8/300 microcontroller, which acted as it CPU. Including 32K of RAM to store the firmware and user programs; the brick is programmed by uploading a program from a Windows or Mac computer to the brick's RAM via a special infrared interface.

After the user starts a program, an RCX-enabled Mindstorms creation can function totally on its own, acting on internal and external stimuli according to the programmed instructions. Also, two or several more RCX bricks can communicate with each other through the IR interface, enabling inter-brick cooperation or competition.

In addition to the IR port, the system includes three sensor input ports and three motor output ports (which can also be used to drive other electrical devices such as lamps and so forth). An integral LCD can display the battery level, the status of the input/output ports, which program is selected or running, and other information.

Version 1.0 RCX bricks feature a power adapter jack to allow continuous operation instead of the limited operation time when using batteries. Power adapter equipped RCX bricks are popular for stationary robotics projects (such as Robot arms); or for controlling Lego model trains. In the latter context, the RCX needs to be programmed with Digital Command Control (DCC) software to operate multiple wired trains.

The Lego Technic control centre was the first programmable standalone Lego product, in the sense of being able to store sequence-based programs and run them. It featured three output ports and manual control, and it was only capable of storing linear sequences of manual input plus timing information. It could store up to two programs at once.

There is a broad community interest of all ages engaged in the sharing of construction  concepts and schemes, programming methodologies, generating third-party software and hardware, and contributing of other ideas associated with Lego Mindstorms (see video on bespoke Mindstorms Game).

The Lego Mindstorms initiative has a great website, very much organised like Wiki; harnessing the creative potential and collaborative efforts of Lego Mindstorm contributor. Lego also supports open innovation by encouraging open-software code for downloading; and by holding a range of competitions and promotional events.

The evolution of Robots, it seems, holds no bounds. If applied intelligence and sophisticated mechanics is being embedded in objects as humble as the Lego Brick, then what ends are there insight for our understating and application of high level artificial machine intelligence?
To know this, surly we must come to grips with what intelligence is, how it works, and perhaps, how we can improve upon it. And one way to begin doing that is to understand the human mind. The most advanced form of mindstorms we know of.

No comments: