Obstacle avoidance robot - Newbie

Hey all, I recently commenced study at university and our first project is to build an automated waste recovery vehicle. I.e. The vehicle must be able to identify magnets, move towards them, retrieve them and bring them back to the start of the track where there is a bin. The vehicle then has to dump the magnet into the bin and start looking for more magnets. Furthermore, there are obstacles that we need to avoid and we only have a budget of $150. I should also note that this has to be 100% automated, no human intervention allowed. I have been researching others designs of obstacle avoiding robots as well as sensors for the vehicle. My questions are as follows:
Which sensor is better for measuring distance: Ultrasonic or Infrared?
How many distance sensors should I use? (I have seen some designs with only 1 ultrasonic that pivots 180 degrees and some designs with 3 or more)
Are there any cheap sensors that can measure the strength of a magnetic field? (I'd like to use the strength of the magnetic field to hone in on the magnet)
As the vehicle will require motors for the wheels and will need some sort of claw device to collect the magnets, will we need an Arduino shield? if so what would you recommend for such a project?
As you can imagine this is fairly daunting for someone who has no previous experience with Arduino. I'm looking forward to your feedback, thanks.