counter statistics

University Of Louisiana at Lafayette

Computer Science department

Suresh Golconda

 

Home

Project

Gallery

Favorite

About Me



My Resume

Projects:

Urban Planning for CajunBot-II: The central brain of the autonomous vehicle is the planning and execution system. It plans and implements complex paths through urban work to reach a given sequence of checkpoints. It involves high level planning of route, followed by a sequence of specialized planning agents like, following a lane agent, change lane agent, intersection driving agent, parking agent, unparking agent, free zone driving agent, 3-point U-turn, etc. The system reacts to road blockages, manages speed limits to follow traffic rules, merging into traffic, convoying, etc, to mention few.


Team CajunBot (2007)


Urban obstacle obstacle detection: Detection and tracing for traffic vehicles, road blockages, parking lot obstacles, etc. It computes and maintains velocity vectors of all moving objects mapping them to a lane, intersection or parking lot they are on.


Me and Dr Arun (my prof, boss and more)





Me and Pablo (my friend, and the genius guru I learnt alot from)




Steering controller for CajunBot-II (Jeep): Upgraded the Steering controller for CajunBot-I to CajunBot-II. The steering controller includes, speed plan based on curvature, changing gear for reverse and forward driving, etc.

Steering Controller for CajunBot-I (skid-steered vehicle): PD based steering controller for 6-wheeled skid steered all terrain vehicle. This include generating left and right brakes for turning and stopping and gas controller for maintaining speed. To mention few, the controller responses to signals like kill, pause, and slowing down if input path rate changes.

1) Cajunbot Off road Path-planning for Grand Challenge (2005)

What is CajunBot: Defense of America (DARPA) conducted a competition ‘Grand Challenge , where an autonomous vehicle needs to travel from Los Angeles to Las Vegas covering over 210 miles over rough terrain, avoiding obstacles. All this needs to be done by computers sitting on the vehicle. The vehicle is provided with GPS points and allowed to use any type of obstacle detecting sensors.
We, the CajunBot team represented ‘University of Louisiana at Lafayette’ by building CajunBot and were the 6th best performing team.

I am currently working to develop a path-planning algorithm for CajunBot using potential field. Where the terrain in consider in 3-demensions, i.e. slope of the ground is considered, which I feel is must when the terrain is filled with uneven rocky land, which can neither be treated as obstacles nor as clean path. Even obstacles are considered while discovering the path. Other issues considered while selecting the path include preference of area, which might depend on things like how slippery or rocky is that portion of terrain.

Cajunbot project pictures:
CajunBot, CajunBot Team, Dr Maida and Me, Dr Arun and Me, With Tony Tether (DARPA director)

With Tony Tether


2) Cajunbot Simulator(2004):

What is CajunBot: Mentioned above.

Developed a sophisticated 3-D simulated world along with robot that exactly simulates real world robot with its dynamics, steering controls, and all the sensor system onboard.
This simulator takes the exact commands which real robot would accept and simulate the exact actions of robot, The simulated sensors should sense the environment created in simulator and give sensor data in exactly the same format which on-board sensor driver would provide. This is more like a computer game where you have a robot, huge terrain and obstacles, when driven in manual control its no different from a car race game. I feel it is more fun driving in our simulator with different type of steering control than any traditional car race.

What is the need?
When developing software for robots, it's hard to execute the programs every time on real robot, chasing around robot to collect data and observe its behavior. Simulator provides one place testing of complete software, it's easy to run, pause/freeze and collect statistical data.

How did it help in developing the software?
We came to know about the DARPA competition so late that we were always short of time, we had to build the complete vehicle along with software starting from scratch in just 3-4 months, the software team had very less access to vehicle and other hardware, Most of the software was build and tested in simulator. Because of short time, we never tested the complete software as a whole on real robot, in fact most of the software modules were never executed on real robot. They all were executed for the first time on real robot directly in qualification round. And the CajunBot performed exactly the way it was expected and performed in simulator. This gave a great reward to simulator.

For more details look at Simulator Report.

Cajunbot project pictures: Simulator Picuture1

3) Cognitive Science project:
Implemented ‘Prey-predator problem’ using magnetic force approach on real robots.
One of the famous problems in AI is prey-predator problem, where an set of predators need to collectively work and trap a prey. One of the approaches is simulate all the predator robots as positively charged magnets and prey to be a negatively charged huge magnet. Most of us might have observed that when a huge magnet is place on table and throw oppositely charged magnets on table, they surround the huge magnet from all sides placing themselves at almost equal distance apart. This is because positive magnets repel each other and attract to the huge negative magnet in the center, this causes the positive magnets to find a path towards huge negative magnet and get attached, maintaining certain minimum distance from other positive magnet. I simulated this magnetic force for each robot that causes the predators to trap a prey.
This project gave me an opportunity to work with latest toys in robot world, like PPRK robot from CMU, CMU cam, Toshiba pocket pc with wireless LAN 802.11

Architecture
Each prey and predator has set of colored sticker placed over them, each of these robots is controlled by a pocket pc placed over it, which runs VC++ code. In this description I call robot and pocket pc together as prey or predator. There is a CMU cam placed to ceiling of the room that looks at all the prey/predators in the field. A desktop computer running a java program communicates with this cam to acquire and maintain the list of positions of all the prey/predators. It identifies the position and orientation of these prey/predators using the set of colors residing on them. This computer acts as server which dynamically registers prey/ predator, keep track of their position and provide them with list of positions at regular intervals through wireless connection. Right now prey has no intelligence to run away from predators (this could be future update), but predators use this list of positions to calculate simulated attraction and repulsion forces acting on it from other predators and prey and move in the resulting direction of force.

Thank to Dr. Mike kalish for providing all the equipment and valuable guidance without which it would have been possible to complete this project I completed.

Project pictures:
PPRK robot, Dr Mike Kalish and me, Me with PPRK and PPC

4) Dynamic Neural network path-planning
Most of the potential field path planning algorithms builds a grid world all through the area of concentration to find the best possible path for robot which require lot of computation and memory to build and maintain this grid world, more over it limits the area of observation. One can observe that the path is always along the straight line from source to target position incase of no obstacle in path, or around the obstacles which are on the path from source to goal. I used this observation to build the dynamic potential nodes only around the obstacles and goal, along with dynamic links between them. I successfully implemented and tested this approach using nomad 200 robots’ simulation world and yet to be tested on real Nomad robot, which has few hardware problems for now.

Project pictures:
Dr Maida Me and Nomad robot

5) Nomad: Detecting the structure of room
My first project with Nomad robot was to use bumper sensor around the robot to detect the structure of a room along with the position and structure of objects in the field. The robot moves around the room sensing the objects and walls and builds an internal representation of the room.

Project pictures:
Nomad Robot, Me with Nomad robot, Dr Logan and Me

6) Genetic Algorithm for Tic-tac-toe
There was always a question in my mind about the capability /success of Genetic Algorithm (GA), which seem to work using randomness. In order to feel the in-depth of GA, I attempt here develop a GA for tic-tac-toe. Tic-tac-toe is one of the interesting games in AI to introduce intelligence of thinking, it does not have too huge a problem space like chess, nor is it too direct problem.

7) Neural networks for Tic-tac-toe
Neural network is one of the emerging concepts of AI, which is being used in large number of diverse fields like database, pattern recognition. Can a neural network be trained to play a game like tic-tac-toe, how large a network does it require to be able to play tic-tac-toe, and how much time does it take to get trained. I wanted to discover these things by developing a neural network and train it play tic-tac-toe. I used traditional back-propagation algorithm to train a neural network to playing a tic-tac-toe and learn the different characteristics of the network that will affect the performance of the network. And to check if the back-propagation learning algorithm can be used to train a network to play games.


8) Tic-tac-toe in 7 programming Languages
I have implemented tic-tac-toe game in 7 different programming languages. They are Perl, Prolog, Python, Scheme, C, Java, Matlab.
Download the programs.
Tictactoe in Perl
Tictactoe in Python
Tictactoe in Prolog
Tictactoe in Scheme
Tictactoe in Matlab
Tictactoe in Java
Tictactoe in C

9) Paranoid Game published in Computer magazine - PC Quest 19XX
Paranoid, one of my game was published in PC Quest computer magazine.


10) Paint Brush for dos, Caroms, Cricket, Car Race, etc and some animations:
Other graphic application and games include Paint Brush for dos, where you can draw store and open you drawing (file format was defined by me just for this application). One of the interesting features of this application is that after drawing a figure using free hand drawing you can preview it as a simulation, where it slowly draws your figure as if someone is drawing on screen before you.
Some of the games I implemented in C include Caroms, Cricket, Car Race, Bike race, shooter, and paranoid.
Some of the animations I implemented in C include a 3-D room with auto opening/closing doors, and a television in the room with different channels to switch between. A animation of man walking, riding bicycle, climbing stairs, etc, which is a side view and shows good human joints during animation which can be implemented with simple set of circles.

11) Safe Locker + paper roller cassette + talker + ...
 
Huge description,, need to write, need to add more pics showing internal parts and mechanism.

Front top view      Top side view     Top side view on red velvet

12) Remote control car that can turn, move forward, reverse, with fancy lights
Remote Control car that can turn, move forward, reverse, with fancy focusing head, and antenna with LED light, and cool looking yellow light inside. It has doors and top that can be opened. Sorry, the car is now almost broken as it was created some where around1996 when I was in around 8th standard . Will add more pics showing its internal mechanism.

Side view car on velvet  Top view on carpet