An automatic truck unloader for unloading/unpacking product, such as boxes or cases, from a trailer, the automatic truck unloader comprising: a mobile base structure having a first end and a second end; a drive subassembly coupled to the mobile base, the drive subassembly including a plurality of wheels for steering and driving the mobile base; a conveyance subassembly disposed on the mobile base, the conveyance subassembly including a powered transportation path operable for transporting product between the first end and the second end; an industrial robot disposed at the second end of the mobile base, the industrial robot providing selective articulated movement of an end effector between the powered transportation path and a reachable space such that the industrial robot is operable to handle the product in the reachable space; a distance measurement subassembly disposed at the second end, the distance measurement subassembly configured to determine presence of objects within a detection space, wherein the detection space and the reachable space at least partially overlap; a control subassembly mounted to the mobile base structure, the control subassembly being in communication with the drive subassembly, the industrial robot, and the distance measurement subassembly, the control subassembly coordinating the selective articulated movement of the industrial robot and the activation of the drive subassembly based upon the distance measurement subassembly detecting objects within the detection space, and dimensions of the trailer provided to the control subassembly; and the control subassembly including a memory accessible to a processor, the memory including processor-executable instructions, characterized in that the processor-executable instructions, when executed cause the processor to: specify a search operation to identify a product skyline within a product space, specify a search operation to identify an active quadrant within the product space, specify a search operation to identify a protruding product within the active quadrant at the product skyline, specify a removal operation to unload the product corresponding to the protruding product, and calculate instructions for removing the product corresponding to the protruding product. a mobile base structure having a first end and a second end; a drive subassembly coupled to the mobile base, the drive subassembly including a plurality of wheels for steering and driving the mobile base; a conveyance subassembly disposed on the mobile base, the conveyance subassembly including a powered transportation path operable for transporting product between the first end and the second end; an industrial robot disposed at the second end of the mobile base, the industrial robot providing selective articulated movement of an end effector between the powered transportation path and a reachable space such that the industrial robot is operable to handle the product in the reachable space; a distance measurement subassembly disposed at the second end, the distance measurement subassembly configured to determine presence of objects within a detection space, wherein the detection space and the reachable space at least partially overlap; a control subassembly mounted to the mobile base structure, the control subassembly being in communication with the drive subassembly, the industrial robot, and the distance measurement subassembly, the control subassembly coordinating the selective articulated movement of the industrial robot and the activation of the drive subassembly based upon the distance measurement subassembly detecting objects within the detection space, and dimensions of the trailer provided to the control subassembly; and the control subassembly including a memory accessible to a processor, the memory including processor-executable instructions, characterized in that the processor-executable instructions, when executed cause the processor to: specify a search operation to identify a product skyline within a product space, specify a search operation to identify an active quadrant within the product space, specify a search operation to identify a protruding product within the active quadrant at the product skyline, specify a removal operation to unload the product corresponding to the protruding product, and calculate instructions for removing the product corresponding to the protruding product. specify a search operation to identify a product skyline within a product space, specify a search operation to identify an active quadrant within the product space, specify a search operation to identify a protruding product within the active quadrant at the product skyline, specify a removal operation to unload the product corresponding to the protruding product, and calculate instructions for removing the product corresponding to the protruding product.