Personally - It depends.

I go in to a match with a particular plan for the way I will be playing. Organizing my team with an appropriate counter-formation and an intentional tactics set up.
BUT I always have a backup plan for some formations and opponents (especially if these guys are from previous competitions where we matched up).

Then the match starts and I watch very closely as to what's going on. I try to read the opponent's set up and spot any gaps in my play.

This usually takes me to the half-time where I will quickly re-set the formation and tactics accordingly if it's needed. Doesn't take me more than a few seconds as if something does in-fact go wrong I usually expect what it might be before the match even starts - Playing Top 11 for so long has it's benefits!

There are also the cases where I am not sure how exactly to counter the opponent so I go in with formation that QUICKLY shows how wrong my decision was AND then I would quickly do the needed subs if I can't just go with the simplest re-positioning.

TLDR: All in all - Subs for me are always intentional and planed ahead of time. Because as the 5 Ps of success go:

Prior
Preparation
Prevents
Piss-poor
Performance

:P

I'll go with the "Half time (45')" option.