------Here is the solution that worked perfectly with me:
the problem lies in the DHCP settings of the ADSL router
Login ur router and go to DHCP settings and find the item called " leasing time "
The default values of the "leasing time " is usually "Forever" and this is the bug with Android
All you have to do is to change the value of the "Leasing time " from "forever" to any other long value (depends on the routers options).
Here i changed the value from "forever" to " 2 weeks " and since then i didnt have any single WIFI disconnect-------