You are essentially getting the number X which is of the form below :
X = 2^a ( 18 ) = 2^(a+1) 3^2
To make “X” a square, you just need (a + 1) to be even. Thus let a+1 = 2k implying, a = 2k -1. Indeed we have a square,
X = 2^(a+1) 3^2 = 2^(2k) 3^2 = ( 3*2^k ) ^2
So how often do we get a square?
Since you started with ’18’, meaning, a =0 and not a square, when you multiply by 2 you get a square since ‘a +1’ will become even. Next, doubling or multiplying by ‘2’ will yield NOT a square since (a+1) will be odd next. Thus we get a square in a cycle of ‘2’ or equivalently, we get a square when we double, and then no, and then yes, and then no, and then yes. etc.
As another solver put it, “So 18 will be a perfect square after any odd number of doublings.”