Using conventional traffic models, it is not difficult to assess the effects of proposed changes in urban traffic circulation systems, for example, one-way streets or banned turns. But how does one decide what are the best options to investigate? At present, engineers typically approach the problems in piecemeal fashion, and the results are not necessarily optimal. What is needed is a design tool with which the user can systematically explore the many alternatives, aiming for a more coherent organisation of the routing pattern over a wider area. One approach may be to use the overall frequency of conflicts as a measure of the ‘quality’ of traffic circulation, and to assign traffic in such a way as to minimize conflict. That is to say, given a road network and a trip matrix, choose routes for all trips such that the number of routes conflicting with each other is as small as possible. If this could be done efficiently, there would be a design tool that could be used for generating worthwhile schemes. This conflict minimization problem can be modelled as a mathematical programming problem. In general such problems are hard. In this paper the authors show that: 1. The problem possesses a certain structure, which can be utilised in selecting solution methods; 2. There exist sub-problems which are totally unimodular, so that network algorithms such as ‘Out of kilter’ (OOK) can be used to get good optimal solutions quickly; 3. The global optimum can only be obtained by ‘branch and bound’ type algorithms for integer programming except in special cases.