Holes in castings may be generated by gas oclusion, by hot points (zones that solidify at final), and when the piece geometry show thickness differences.
I would suggest your reading chapters 5(section 5.5), 6 and 7 in Dr. John Campbell's book: "Castings", ISBN 978-0-7506-4790-2 to get a feel for how complex the reasons for porosity in ductile iron can be. Simple answer to your question is that giving 3 reasons will be wholly inadequate. First of all porosity as commonly observed visually or under an optical microscope has its roots in both shrinkage porosity and gas porosity. Ductile iron in particular needs its own consideration. Solidification shrinkage is one of the consequences of the mode of solidification, which in ductile iron may be thought to be influenced by the composition, cooling rate and melt treatment (inoculation) as pointed out long ago by researchers at BCIRA. In any graphitic cast iron there is additional factor of the interaction between the expansion of graphite (low density) during solidification with the mold restraint. This factor is totally different in effect in flake cast iron which is believed to have intimate contact between graphite and solidifying matrix, and ductile iron where the accepted mode is one of divorced eutectic type; here the divorced graphite is surrounded by an austenitic shell. This implies that the expansion of graphite contribution towards reduction in shrinkage in flake iron will be grater than in ductile iron. In simple terms this results in greater solidification shrinkage in ductile iron as compared to flake cast iron. As the name itself implies gas porosity is due to gas that is insoluble in the solid metal. The analysis of gas porosity involves detailed considerations; Dr. Campbell has devoted an entire chapter (Chapter 6) for this purpose. The type of inoculant may have different effects on the generation of gas and the extent of its solubility in ductile iron (the difference between "clean" ferrosilicon with aluminum and calcium-bearing inoculant as discussed by Dr. Campbell comes to mind in this context). Thus to identify the "reasons" for the occurrence of microporosity complete information on the geometry of the casting, its composition, inoculant, casting/mold interaction and furnace as well as ladle atmosphere. To my knowledge popular softwares give very good indication of shrinkage porosity but when it comes to realistic modeling of actual microporosity much remains to be done.
In my last answer I tried to point out why it is very difficult to identify the "reasons" for microporosity. An academic may find my answer palatable but for those whose focus is on " reduction of microporosity under the riser", in ductile iron castings, I have the following suggestions:
1. Make sure you have designed the riser properly, using for instance "Chvorinov's rule".
2. Make sure that the riser is placed near the "hot spots" in the casting.
3. Make sure that the height-to-diameter ratio of the riser is properly chosen.
4. Make sure that the molten metal in the riser is the last to solidify.
5. Follow all the recommended procedures for making good quality ductile iron castings. Consult organizations like Ductile Iron Society or BCIRA for this purpose. Googling may also help.
It has been always frustrating to find porosity immediately below the riser. After all, the reason for putting a riser (feeder) there is to feed the metal when it is contracting. However by putting the riser there we also prolong the local solidification time, any dissolved gases to diffuse to inclusions or bifilms under the negative pressure generated by solidification. Usually pressurizing the riser (J.T. Berry did some work on this) may help but it is inconvenient and expensive to do this set-up and really you end up battling the symptom and not the root cause. If you minimize/eliminate inclusions by good melt quality, careful handling of the melt and good filling system design, the pores under the riser will decrease in number and may even disappear completely. I hope this helps.