Provided is a robot, including: a plurality of sensors; a processor; a tangible, non-transitory, machine readable medium storing instructions that when executed by the processor effectuates operations including: capturing, with an image sensor, images of a workspace as the robot moves within the workspace; identifying, with the processor, at least one characteristic of at least one object captured in the images of the workspace; determining, with the processor, an object type of the at least one object based on characteristics of different types of objects stored in an object dictionary; and instructing, with the processor, the robot to execute at least one action based on the object type of the at least one object.