I have never done it myself, but I have seen this type of "tree" support system. I've seen them online as well as some parts made by end-users who upload to Thingaverse.
The concept seems pretty sound. However, the TRUNK must be strong enough to support whatever is above. I suppose the trunk can be user-defined or by calculations, with consideration of mass (or amount of infill) directly above the trunk and branches. I can see this getting complex, especially on the programming side, though.
I've mostly had to generate seemingly, needlessly tall supports to support a small overhang, where if a small support branch can be stated from an arbitrary point and extends out there (at less than 45 degrees, of course), a print could be much more efficient.
This feature could save a lot of filament as well as print-time.