A computer-implemented method of arranging an object (42a-42c) in a 3D space for solving the bin packing problem of efficiently arranging cargo in a target space, comprising: obtaining information (1, 2) on the target space and a plurality of objects (42a-42c) to be arranged in the target space; dividing the target space into M x N subspaces extending from a first surface among planes forming the target space, the target space having a cuboid shape; dividing the target space into P x Q subspaces (83, 93) extending from a second surface orthogonal to the first surface among planes forming the target space; calculating, for each of the M x N subspaces (43, 73) extending from the first surface, a first feature representing an object arrangement state in the subspace (43, 73); calculating, for each of the P x Q subspaces (83, 93) extending from the second surface a second feature representing an object arrangement state in the subspace (83, 93); inputting data representing the first feature of each of the M x N subspaces (43, 73) and data representing the second feature of each of the P x Q subspaces into a first artificial neural network; obtaining, from the first artificial neural network (226, 228), a current arrangement state embedding vector of the target space based on information on an arrangement state of the objects (42a-42c) existing in the target space, selecting, by means of a second artificial network, a first object to be arranged in the target space among the plurality of objects (42a-42c) and determining a position where the first object will be arranged in the target space based on the information on the target space, information on the plurality of objects (42a-42c) and the current arrangement state embedding vector; wherein the second surface is a front or side surface of the target space, and wherein the second feature for each of the P x Q subspaces (83, 93) extending from the second surface includes whether an object identifier displayed on a surface of an object (42a-42c) existing in the target space and arranged in the subspace is visible from the second surface. obtaining information (1, 2) on the target space and a plurality of objects (42a-42c) to be arranged in the target space; dividing the target space into M x N subspaces extending from a first surface among planes forming the target space, the target space having a cuboid shape; dividing the target space into P x Q subspaces (83, 93) extending from a second surface orthogonal to the first surface among planes forming the target space; calculating, for each of the M x N subspaces (43, 73) extending from the first surface, a first feature representing an object arrangement state in the subspace (43, 73); calculating, for each of the P x Q subspaces (83, 93) extending from the second surface a second feature representing an object arrangement state in the subspace (83, 93); inputting data representing the first feature of each of the M x N subspaces (43, 73) and data representing the second feature of each of the P x Q subspaces into a first artificial neural network; obtaining, from the first artificial neural network (226, 228), a current arrangement state embedding vector of the target space based on information on an arrangement state of the objects (42a-42c) existing in the target space, selecting, by means of a second artificial network, a first object to be arranged in the target space among the plurality of objects (42a-42c) and determining a position where the first object will be arranged in the target space based on the information on the target space, information on the plurality of objects (42a-42c) and the current arrangement state embedding vector; wherein the second surface is a front or side surface of the target space, and wherein the second feature for each of the P x Q subspaces (83, 93) extending from the second surface includes whether an object identifier displayed on a surface of an object (42a-42c) existing in the target space and arranged in the subspace is visible from the second surface.