Lawyers know that the best way to get a Client out from an unexpired contract is to claim that the other party is in breach. Inevitably, charges and countercharges will fly. In the best of circumstances, this is very unproductive. In the context of a research and development agreement, it is down right stupid. Surely you've seen that clause before.
Lawyers love it.
In my judgement, it is not appropriate in a research and development agreement. All you really want to do is break off the relationship and perhaps address some of the consequences of that action. A milestone is not met by the date specified in the agreement, regardless of the reason. Whether or not the milestones are met, the project nonetheless substantially fails to meet the objectives initially set for the pro ject, regardless of the fault of either party. So there you have it.