I am a Computer Science final year undergraduate student.Until now,I used to shirk away from robotics as I believed that it is more related to electrical and mechanical aspects.But my interest in robotics grew by seeing some demos and I seriously want to make a robot which involves AI by teaming up with interbranch students of college.So what is the best project I can pick up as a beginner in robotics and AI and some experience in Computer Science so I can apply AI Machine learning concepts so that it learns something.How to start something?

  • $\begingroup$ How about we flesh the question out a bit, are you looking for something which will involve hardware design as well or an off the shelf robot? $\endgroup$ Mar 13, 2014 at 21:58
  • $\begingroup$ @MatthewGordon,basically a robot that performs any task intelligently $\endgroup$ Mar 13, 2014 at 22:15
  • $\begingroup$ I'm not sure it would be possible to come up with a wider spec... For some ideas take a look at existing university robotics competitions en.wikipedia.org/wiki/…. $\endgroup$ Mar 13, 2014 at 22:28
  • $\begingroup$ Welcome to robotics XXX, but I'm afraid that life questions really aren't a good fit for robotics.SE. We prefer practical, answerable questions based on actual problems that you face. Take a look at How to Ask and tour for more information on how stack exchange works. $\endgroup$
    – ThomasH
    Mar 15, 2014 at 23:54

2 Answers 2


This is quite a broad question.

Everything depend on if you want to involve hardware design as Matthew Gordon said already. Lets say you don't want to touch hardware design.

I, as well, will suppose you don't want to do control (like PID control) but more AI, in team work, K-means algorithm and so.

First of all, I honestly think that, you'll always have to know at least a bit how the hardware is working for it is just really useful to know that in the control process. You don't have to be an expert about it but know the limit and the possibility of the robot helps design the machine learning process. So you know what's possible and what isn't.

Apart from that if you have no robot at disposition already you should look at simulation software. Some like Stage or Gazebo are really good simulators. Gazebo implied a bit more of preparation to be run though.

Then you can just take an existing robot to do your simulation. An existing robot like PR2 or TurtleBot depending on your project would do the trick.

Now those robots run with ROS which is, as the name say, a Robot Operating System. The goal is to provide abstraction so if you design an AI in C++ or python you could just directly run it on those robots because all the controls are already done. Meaning if your program uses the standard type of message for moving the robot you just have to ask for things as simples as "go there" in your AI program.

Ros is definitely a good start if you want to team up with other people as well as it will give you conventions, rules and a lot of libraries already provided for your robot.

  • $\begingroup$ ,thanks for a well formed answer but the scenario is a little different.I am the programmer here with team of two electrical engineer to complete the robot.I think process illustrated above will hold good here too. $\endgroup$ Mar 14, 2014 at 13:27
  • $\begingroup$ What kind of Intelligence are planning on creating ? Are your two electrical students going to program the motor drivers as well and the sensor drivers and up to which level ? In any case the simulation first is always a good start so you don't have to wait for your two friends to finish the robot to work on. $\endgroup$
    – Malcolm
    Mar 15, 2014 at 3:33

Basically almost any control system can be used with machine learning. You just learn the control logic instead of using some PID for example. Here is one simple example which doesn't have too much robotics involved but you'll get the point I hope: http://www.youtube.com/watch?v=XiigTGKZfks

Ball and Plate system could also be interesting to you. You could generally base your research on comparison of different algorithms, both machine learning (HMM, reinforcement, supervised...) and some more often used controllers like PID and Fuzzy logic.



Not the answer you're looking for? Browse other questions tagged or ask your own question.