How to autonavigate in an unknown map
I have a custom robot running on raspberry pi(raspbian) with ROS kinetic. I have understood from this that for the robot to avoid obstacles, there must be a known map that will only be generated by manually controlling the robot using either joystick or keyboard, etc. Can it be possible for the robot to autonomously navigate through an unknown map and avoid obstacles? Where can I find such package and how do I integrate this with my custom robot? My robot does not have any LIDARs, btw. It has an ultrasonic sensor in front, 2 analog IR sensors in the front sides and 2 digital IR sensors in the back.