Legalization is the best way to end it. The network analysis needs to occur about politicians in the rich countries, how to manipulate them into legalizing drugs. It's a lot easier to collect data on them and it's the actual root cause.
Legalization of marijuana will allow buyers and growers to come together in their communities. It allows buyers to choose local farmers instead of those in foreign countries. Legalization would remove the cash source that causes people to want be part of these cartels.