Snakes and Ladders
Cash prizes worth 30000 INR to be won!
This Pragyan 2010, for the first time in the world, behold Robots playing Snakes and Ladders, a classic game which leads the player through hopes and despairs and finally to liberation. Watch the bots climb up the ladders with ease and tumble down along the snakes, watch their persistent struggle with an indomitable spirit to reach their destination. Does that look simple? The Bots posses their own intelligence and vision to play the game and navigate through the board. If it still looks simple, the registration for participation will be open shortly. If it looks difficult, get a glimpse of the incredible feats done by the bots this Pragyan.
Registrations are now open. Click here to register.
Registrations dates extended to February 20, 2010. Please ensure that you register on the Pragyan site before you register here. For any queries or issues regarding registration, contact the event managers or send an e-mail to:

Have you ever felt like God? Its time to give life to nuts and bolts, chips and IC’s and wheels and wires.
Build a semi autonomous image processing robot that can play snakes and ladders game.
The bot should move dice number (the number of circles on given dice image) of white squares starting from the start point (START) and once the destination is reached it should give an indication that it has reached the particular number of squares in the image. The bot should climb up the ladder if its destination square is the bottom of a ladder. Likewise if the bot’s destination is a snake’s head, it has to come down to its tail along the snake. The bot will also have to indicate if it reaches the final destination point (HOME). Sounds spicy isn’t it?
Arena Specification
- The arena is of non-reflective soft material on a wooden base.
- Size of the arena is 240 cms X 180 cms. Each square which denotes the path, snake and ladder will be of side 10 cms. The START and HOME are denoted by circles of diameter 20 cms. The distance between the centers of adjacent squares along the normal path is 30 cms and along the ladder or snake is 20 cms. The distance between the center of a circle and the center of immediate square in the path is 35 cms. ( Please note that all the dimensions are subject to a small tolerance value).
- The robot path has turns of 90° only (refer to sample image).
- The background color of the arena is black . The normal path to be traversed is denoted by successive white squares of the specified dimensions. The START point is denoted by a circle yellow in colour. The HOME point is a circle magenta in colour.
- The snake path is denoted by successive squares red in colour and the ladder by successive green squares.
- Only start and end point of a snake or a ladder will lie on the normal path and they will not intersect the normal path at any other point.
- The organizers will be providing an overhead camera along with the drivers. A computer with MATLAB installed will also be provided. More information on the camera, computer and the softwares to be provided will be updated soon. Participants can clarify the same with the organizers.
- Participants are not allowed to use their own overhead camera. However they can use their computers.
- Note : In any situation the organizers cannot be held responsible for any misinterpretation of the RGB values. Organizers will provide the best RGB efficiency possible by suitably adjusting the camera settings and lighting conditions of the venue.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|---|
Event Format
- The competition will be held in two days.
First day : Calibration.
Second day : Main run.
Day 1:
During the 1st day a sample arena will be shown to all the participants who are present on Day 1. Participants will be given time slots on the day. It is advised that the participants make use of the calibration time provided the first day.
Day 2:
During 2nd day the arena for the finals will be revealed (just before the start of the event).
Any team trying to feed data of any kind about the arena will lead to the disqualification of the team.
- A team is given 10 minutes of setup time immediately after which a run time of 5 minutes starts.
NOTE: The 5 min main run clock will not be stopped at any cost (not even during timeouts and penalties)
- Timeouts :
Teams can call out for a timeout during the main run if the bot stays in the same position for more than 10 secs. In this case the bot will be placed in HOME position and the code will be restarted.
- Before the start of the main run time a folder containing the dice images will be provided.
- The robot will be placed on the start circle (yellow in colour) facing the direction of the main track. The computer should process the first die image and the robot should move accordingly. After reaching the destination it should signal its arrival and then proceed to the next destination. If the robot fails to signal its arrival it leads to type I violation.
- If the destination, as per the die happens to be the foot of a ladder, the robot is expected to climb up (follow the green squares) the ladder, reach the ladders top square and then signal its arrival. If the robot fails to follow the ladder and signals at the ladder’s foot, it is considered as type II violation. If the robot fails to follow the ladder and does not signal at its foot either, it is considered a violation of type I and II. If the robot starts to climb up the ladder and then loses its way in the middle, it is considered as type IV violation. If the robot reaches the top of the ladder and then fails to signal, it is considered type I violation.
- If the destination, as per the die is the head of a snake, the robot is to fall down along (follow the red squares) the snake, reach the snakes foot and then signals its arrival. If the robot fails to follow the snake instead signals at the snakes head, it is considered as type II violation. If the robot fails to follow the snake and does not signal at its head either, it is considered a violation of type I and II. If the robot starts to fall down the snake and then loses its way in the middle, it is considered as type IV violation. If the robot reaches the tail of the snake and then fails to signal, it is considered type I violation.
- If the robot intersects a normal path or starts to climb up a snake or fall down a ladder or starts to follow a ladder or a snake otherwise not in its destination is called type III violation.
Bot Specifications
- The size specification of the robot is as follows:
Maximum length : 25 cms
Maximum breadth : 25 cms
Maximum height : 20 cms.
- The robot should be self-contained, i.e., it should have an onboard power supply exception being parallel port and USB interface.
- The potential difference between any two points in the robot should not be greater than 12V. However a tolerance of 2V is allowed in the case of over-charged batteries.
- The robot is allowed to communicate with a computer outside the arena either through wired or wireless means. In case of wired communication, the wire should remain slack throughout the run.
- Working of the bot should strictly follow the principles of image processing. The robot should not have any on-bot-sensors or control-switches. However a robot should have an LED or buzzer.
- Each time the bot reaches the destination as per the die image provided, it should signal the same through an LED or buzzer or by any means which should be informed beforehand to the organizers.
- Use of readymade kits or LEGO-KITS is strictly prohibited, exception being gear mechanisms and geared motors of simple toys and commercial wireless modules available in markets.
NOTE: Any violation or ambiguity of the above rules shall lead to direct disqualification. It is advised that the participants clear all their doubts regarding these rules with the organizers well before the event.
General Rules
- The dimensions of the robot should not exceed the given maxima at any point of time. The robot is not allowed to disintegrate or run as entities once the run time starts.
- The mechanical and PCB design of the robot should be original. However PCB manufacturing can be outsourced. The outsourcing work done should be clearly described to the organizers during the time of registration and a copy of the PCB layout should be brought ready for the organizers reference.
- All the robots should be ready on the specified time for the run.
- If a robot dismantles in the arena or found damaging the arena, it will be disqualified.
- Any team member pulling the robot during the course of its run will lead to lead to a forced time-out.
- A team shall consist of four members either from the same college or from different colleges. They need not be from the same branch of study. The participants should bring the ID card issued by their college along with them.
Violations and penalties:
Type 1 violation:
A type I violation occurs when the bot doesn’t signal at all.
Penalty: The current traversal of the bot will not be considered for points calculation. Points will be counted from the next time it signals properly. The current run’s points will not be included.
Type 2 violation:
A type II violation occurs when the bot doesn’t signal at proper position.
Penalty: A penalty of 5 points will be awarded every time this violation is encountered.
Type 3 violation:
A type III violation occurs when the bot doesn’t move along the main path instead it tries to reach the destination point directly by skipping end turns or so.
Penalty: The bot will be reset to the home position and the code will be restarted.
Type 4 violation :
A type IV violation occurs when the bot doesn’t follow the path i.e. it goes off the tracks and moves in the black background only.
Penalty: The bot will be reset to the home position and the code will be restarted. An extra 5 penalty points will be awarded during the next run.
Time-Out:
A participant can call for a time-out if the robot does not move properly or satisfactorily. In this case, the bot will be reset to the home position and the code will be restarted and an extra 5 penalty points will be awarded during the next run. A team can call for a maximum of 5 time-out’s. Please note that penalties for type III and type IV violations are considered forced time-out’s and shall be counted as a time-out.
If a robot completes a trial successfully by reaching HOME. It can restart for the next trial. This is not considered a time out and the best final points of all the runs is taken into account as the final score.
Judging Criteria
- All teams reaching HOME will be ranked higher than those which do not reach the home. Teams navigating through the maximum number of white squares along the normal path are ranked higher in the table.
- Calculation of points is as follows:
K = number of moves made correctly according to the die.
T = total run time of the robot.
F = 1 if robot reches the HOME
0 if robot doesn’t reaches the HOME.
Points = K*10 + [600/T]*100*F
TOTAL POINTS = POINTS – (SUM OF PENALTY SCORES AWARDED)
- Total score (given by the best of all total points) is considered for ranking the robots.
- Can optical encoders for the robot wheels be used?
- Can OpenCV or other such software be used?
- Can I outsource manufacturing and soldering of my PCB's?
- What will be the resolution of the webcam?
- What all ports will be provided in the system?
- What kind of image will the camera provide i.e., will it be the exact arena or will it have some of the neighbouring objects too?
- Could you throw some light on the dice images and its processing?
Optical encoders for the robot wheels can be used. But however the arena will be made on a flex sheet and we cannot assure you that wheels will not slip as it also depends on the weight of the bot. We suggest camera feedback will be the most reliable way to navigate your bot.
NOTE : if optical encoders (or shaft encoders) are found to detect any part of the arena instead of the wheels, it might lead to disqualification.
OpenCV, MATLAB and VCpp can be used. Kindly e-mail the organizers to confirm the the use of any other software.
Yes. Manufacturing of PCB's can be outsourced but participants should produce the PCB layout files whenever asked for by the organizers.
Participants will be provided with a 5 MP webcam, the make and model of which will be informed later. Do keep checking the event page for updates. The drivers of the web-cam will be provided to you during the event (this is in case if the participants are using their own laptops).
The system will have parallel, serial and USB port provisions in it.
The image from the webcam will be in such a way that it just covers the arena. To be on the safer side we recommend you to have a cropping mechanism or a similar function to refine the image during the calibration time.
A folder containing a set of dice images will be provided to the participants. These images will be numbered as 1,2,3,4 and so on and will be in .jpeg format. Each of these dice images should be read from the folder AUTOMATICALLY by MATLAB. Once the main run has started, the teams should neither touch the bot nor the computer.
- Introduction to Parallel Ports
- Introduction to Micro-Controllers
- Introduction to MATLAB
- Introduction to Motor Control and Drivers
Parallel port is a simple and inexpensive tool for building computer controlled devices and projects. The simplicity and ease of programming makes parallel port popular in electronics hobbyist world. The parallel port is often used in computer controlled robots, otherwise known as semi-autonomous robots.
Here are some tutorials to understand and work with a parallel port:
An Introduction to Parallel Port Hardware, PDF (73.7 KB)
Programming via Parallel Port, PDF (808 KB)
You may know what an OR gate is. An OR gate is a logic gate that takes two inputs and controls an output. You may have played with these types of gates, even possibly a DIP packaged OR gate with 4 OR gates built into it.
A microcontroller is the same as an OR gate. You have some inputs, you have outputs. The crazy thing is that a micro runs code. Machine code to be specific. For instance, with a little bit of work, you can monitor the input of two pins A and B. And based on those inputs, you can control an output pin C. So to replicate an OR gate:
if (A == 1 || B == 1)
{
C = 1;
}
else
{
C = 0;
}
It's C code! You can code up all sorts of different applications, compile code, and load it onto a micro, power the micro, and the code runs. Very simple! Microcontrollers are used in all the electronics you take for granted such as your microwave, TV remote, cell phone, mouse, printer, there's over 150 microcontrollers embedded into new cars! There's one waiting for you to depress the brakes (BRAKES == 1) and for the tires to lock up (LOCK_UP == 1). When this happens, the micro releases the brakes, and you have ABS (anti-lock brake system).
Hence using a proper software, a parallel port and a programmer will have you running your bot with the help of your program. Before that you need to know what microcontroller programming is all about. Browse through the following files. We am sure they will help you.
Introduction to Simple Programs, PDF (14.9 KB)
PWM in Microcontrollers, PDF (126 KB)
For more help, refer the following sites:
AVR Freaks
Atmel
AVR for Beginners
(Please make a note of the fact that all the tutorials given here are mainly for programming in Atmel 8L or Atmel 16 IC’s using specific softwares like WinAVR and AVR Studio.)
There are an umpteen number of packages available for data acquisition and image processing of the same. MATLAB is a global package and it can be used for the same purpose (successfully yet in a simple way).
The following materials will give you an introduction as well as an insight into MATLAB programming:
An Introduction to Programming in MATLAB, PDF (136 KB)
Introduction to Data Acquisition Through MATLAB, PDF (390 KB)
Apart from these amateur materials, one can always refer to the ‘Getting Started’ document found in the Mathworks website.
Motors play the role of actuators almost in all autonomous and semi-autonomous robots. Motors play the role of actuators almost in all autonomous and semi-autonomous robots. For moving a robot we usually have two dc motors attached to wheels and gear system. Reason behind the use of dc motors is the fact that they are the most easily controlled set of motors. They are pretty cheap and they can be used for forward as well as reverse motion simultaneously with the same set of circuits. In most cases, the dc motors don’t have enough torque to drive the robot directly. Hence gears are used to increase its pulling power at the expense of its speed. Also slower speed will mean better control. Hence for Image Processing Semi-autonomous robots running with a feedback from computers motors of low RPM ratings are used. Motors with RPM value of 50, 80, 100, 150 are available in the market.
Usually to have a better control on the motor and to provide the maximum voltage across its terminal motor, driver IC’s are used. The following materials will give you an idea about various motors available, differential drive and the way to implement them:
Getting Started with DC and Stepper Motors, PDF (1.23 MB)
Introduction to Different Kinds of Motors, PDF (887 KB)
Chellappan
+91 94427 52999
Ashwath R
+91 94436 88853
Vengatesan G
+91 99440 58445








































The highly anticipated online treasure hunt is on!
Drop in your queries, criticism, complaints and compliments at our 









