Some of these terms are pretty general and their usage will depend on the user and context. I'll try to define what I think are the most appropriate and common usages of each.
Grid - usually a regular D-dimensional boxes that are packed, axis aligned. Sometimes used synonymously with a set of points that are also regularly placed and axis aligned. I've used this to describe a (finite) rectangular cuboid (in 3D) but could just as easily be used to describe an infinite set of boxes. As in "Label each cell in the grid an alternating color of red or blue".
Tiling - A covering of some D-dimensional space from a (finite) set of smaller tiles, with no overlap and no gaps. I've used this to describe higher dimensional spaces but is often used for 2D. As in "A set of Penrose tiles can be used in a plane tiling".
Packing - Placing a (finite) set of smaller geometric elements into a large area such that the geometry doesn't overlap but gaps are allow. The larger area that can be be finite or infinite. The dimension can be arbitrary. This is often used in context of trying to minimize the gaps within the area being packed. As in "Randomely placing 3D oblong spheroids (aka 'M&Ms') in a box of side length L will yield a sub-optimal packing. Introducing gravity, friction and 'shaking' the box for some amount of time will yield a better packing"
Tesselation - A synonym for tiling.
A grid is a tiling. For example a 2d grid is a tiling/tesselation of the plane by boxes.
Tessellation is more clever tiling. In general you get fairly simple concavities in tiling, like darts or deltas, whereas tessellation typically has compound inclusions that require being assembled from outside the plane.
In the real world you can usually push tiles into place, but tessellated objects have to be dropped in place from above, like puzzle pieces. Or I suppose grown in place if itβs organic.
Grid - usually a regular D-dimensional boxes that are packed, axis aligned. Sometimes used synonymously with a set of points that are also regularly placed and axis aligned. I've used this to describe a (finite) rectangular cuboid (in 3D) but could just as easily be used to describe an infinite set of boxes. As in "Label each cell in the grid an alternating color of red or blue".
Tiling - A covering of some D-dimensional space from a (finite) set of smaller tiles, with no overlap and no gaps. I've used this to describe higher dimensional spaces but is often used for 2D. As in "A set of Penrose tiles can be used in a plane tiling".
Packing - Placing a (finite) set of smaller geometric elements into a large area such that the geometry doesn't overlap but gaps are allow. The larger area that can be be finite or infinite. The dimension can be arbitrary. This is often used in context of trying to minimize the gaps within the area being packed. As in "Randomely placing 3D oblong spheroids (aka 'M&Ms') in a box of side length L will yield a sub-optimal packing. Introducing gravity, friction and 'shaking' the box for some amount of time will yield a better packing"
Tesselation - A synonym for tiling.
A grid is a tiling. For example a 2d grid is a tiling/tesselation of the plane by boxes.