Assuming positive weights, only maximal subsets of nonintersecting polygons are to be considered (if you remove an element from a maximal subset, the sum decreases).
You could try an incremental approach: assume that for the M first polygons, you have found all maximal subsets of nonintersecting polygons. Take into account one more polygon. You will form new maximal nonintersecting subsets by considering all available subsets and discarding from them all the polygons that intersect the new one.
Example: A, B, C, D. A and B intersect, A and C intersect.
Start from { A }.
Add B. Form { A, A U B }. Discard A from A U B. You keep { A, B }.
Add C. Form { A, B, A U C, B U C }. Discard A from A U C and absorb B in B U C. You keep { A, B U C }.
Add D. Form { A, B U C, A U D, B U C U D }. You absorb B U C in B U C U D and keep { A U D, B U C U D }.
The solution is the maximal subset with the largest sum.
It is probably better to precompute the intersections by exhaustive search (O(N^2) intersection computations), or by more efficient approaches (possibly down to O(N.Lg(N) + K) intersection computations).
But the construction of the subsets might be exponential in the number of polygons :( I don't know.
It is also possible that a dynamic approach will allow you to get rid of certain subsets earlier (processing the polygons in a certain order such as by increasing or decreasing number of intersections ?).