In Mobile Edge Computing (MEC) the decision to offload a task could be made either by the mobile or by the server that is deployed at the Base Station (BS).
I assume that by offloading, you are saying that the mobile device would go from using the cellular base station to using a local WiFi link instead. Correct?
If my assumption is right, then the decision is best made by the mobile device, simply because the mobile device has more information about the local conditions. At best, the base station can estimate where the mobile device is, but the base station has no idea about any number of variables. If nothing else, some guy next to you might have set up a free mobile WiFi hot spot that you might use. How would the base station know?
Of course, there are any number of other factors involved in the decision, that the base station would never know.
in fact the BS knows every thing happens in the mobile due to the signaling between them, hence; the BS could make a decision because simply it knows about the traffic and the number of tasks that are being processed at the server in the BS. one more thing is that the server's CPU is much faster than the CPU of the mobile with out ignoring the high number of tasks at the server.
last but not least, by offloading I mean a generated task by the mobile could be executed by a server deployed at the BS rather than executing it by the mobile. so basically we will still be using the cellular BS and it could be an Access Point as well.