Effective algorithms for pickup and delivery problem with loading restrictions and handling costs