An approach for reducing the density of a channel by routing some nets (or subnets) over the cells (i.e., outside the channel) is proposed. It is shown that only the removal of critical nets contributes to the reduction in the channel density. The channel is divided into zones, each having a zone density where the removal of any net from a zone will reduce its density by one. To reduce the channel density, only certain critical zones need to have their nets routed over the cells. A bipartite graph is used to represent the relationship between nets and zones. The problem is transformed into a constrained covering problem and formulated as an integer linear programming problem. Compared to previous research, the approach reduces more channel densities while using fewer tracks over the cells. For Deutsch's difficult channel, a previous approach needs 15 tracks over the cells to reduce the channel density by 3, whereas the present needs only 5 tracks to achieve the same result.