Can spammers use their own algorithm to non-randomly select tips — possibly then continuously confirming the same transactions over and over again while inundating the network? This was a recent assertion on Reddit that strikes me as false and I would like to rebut.
The protocol does not enforce a particular tip selection algorithm, so every transaction-issuing network participant is free to choose whatever method they want. The IOTA reference implementation (IRI) has chosen MCMC. As demonstrated in
Equilibria in the Tangle from https://arxiv.org/abs/1712.05385 all network participants should (in theory) converge to the same tip selection algorithm, for game theoretic reasons.
So if the network is spammed with "good" transactions (e.g. following the default MCMC tip selection algorithm from the IRI) it does help the network. However, what you pointed out is true. That is, if the network is spammed with "bad" transactions (e.g. referencing the same old transactions over and over again) it could potentially slow the network down. But if the majority of network users follows a sensible strategy like MCMC, this should not be an issue, because MCMC aims at choosing mainly "good" transactions.
It is worth noting that it is indeed possible to spam the network (to some degree), because the PoW is fairly small. So there have been instances in the past where people tried to flood the network with transactions. See e.g.
(taken as of 05-Dec-2017 from http://iota.dance/tangle)
The highlighted points of the tangle whitepaper are that first, you cannot enforce a selection strategy, and second, if you assume others are following monte carlo, then that is your best strategy to follow in order to be selected by others.
The IRI implements a random tip selection algorithm but you are free to modify it to select again and again the same transaction. It's what you do when you promote a transaction.
Inundating the network should be very costly because you have to do the pow for every transaction.