I find free roam games hugely frustrating. A game shouldn't be on rails, but at the same time it needs SOME indications of where you should be every now and then, alse you just swap achievement for mindless wandering around doing nothing. You think "i wanna go over here maybe theres something cool!" which is all well and good, but you get to the stage where you are bored of that, but don't want to stop in case there really IS something cool.
Non-linear is good as you can delay as much as you like but ultimately will eventually do the required set pieces to progress. Linear, of course, can be a little boring (especially in a game of this type) but as above, i wouldn't put DAO in that category.