Here's one idea if it might help you get started (though you can polish it):
- Mark all "dead ends".
- Mark all private streets.
- Recursively (or perhaps I should say iteratively, depending on your POV) mark all roads as X that only lead to previously-marked roads.
- Non-recursively, unmark each marked road that is both adjacent to an unmarked road AND that satisfies some reasonable heuristic (such as "being within 2 intersections of the center of your circle").
- Also unmark all freeways/highways/expressways/other reasonably-major roads (although few if any of them should be marked at this point)
- Delete all marked roads from your list of candidates.
This should ensure that every candidate road actually has a non-negligible chance of being at least seen by random drivers, and not just by residents who are forced to drive on it on the way home.
You can obviously augment