Depending on the size of the add/cut (or "level" as they are sometimes called), the reason may vary; for example, when the dispatch is being planned for the day by the preload manager, they move address ranges around from route to route, depending on the inbound volume on that specific day, and the number of routes being run. Typically, routes run close together - 1A is theoretically close to 1B, for example. So, if volume is really light, the dispatch plan will typically cut one of those routes, and mash what is left into one route. Because the dispatch operates (to my knowledge) on basic pattern matching (via consignee, address, etc), sometimes certain address ranges are put where they do not belong - "unplanned" add/cuts are meant to fix this, and get the packages in the right route/car.
Another practical scenario where add/cuts are used is when "overload" (basically, extra) routes are in, and they act as kind of a catch-all for certain routes that are slammed; for example, let's say that volume is really high, and route 1A has 600 pieces and 300 stops in it; in theory, some stops from this route will be diverted to an overload route (9A or whatever it might be called - it varies from center to center). If the preload shift starts, and a stop of say, 10 UOW comes down, but they are massive Pottery Barn boxes, it might be left out. A snap decision might be made to cut those into an overload.
Tangentially, it is worth considering a further scenario - why do the add/cut at all? That is to say, why not just take the boxes that won't fit into 1A and throw them into 9A, as long as the driver knows? My understanding is that if a stop has not been PAL'd out, it will not show up in the drivers EDD; which makes stop completing difficult (so they don't get credit for the stop)? That is the boundary of my own personal knowledge; what I do know is that drivers dislike taking packages that are not in their EDD.
A final note is that very large add/cuts are allegedly frowned upon, as they will have an impact on the PAS system (which coordinates the various functions that produce a PAL label) and degrade its performance considerably. The limit specified in the PAS documentation is 200+ pieces.