  We consider a resource-constrained IoT network, where multiple users make
on-demand requests to a cache-enabled edge node to send status updates about
various random processes, each monitored by an energy harvesting sensor. The
edge node serves users' requests by deciding whether to command the
corresponding sensor to send a fresh status update or retrieve the most
recently received measurement from the cache. Our objective is to find the best
actions of the edge node to minimize the average age of information (AoI) of
the received measurements upon request, i.e., average on-demand AoI, subject to
per-slot transmission and energy constraints. First, we derive a Markov
decision process model and propose an iterative algorithm that obtains an
optimal policy. Then, we develop an asymptotically optimal low-complexity
algorithm -- termed relax-then-truncate -- and prove that it is optimal as the
number of sensors goes to infinity. Simulation results illustrate that the
proposed relax-then-truncate approach significantly reduces the average
on-demand AoI compared to a request-aware greedy (myopic) policy and also
depict that it performs close to the optimal solution even for moderate numbers
of sensors.
