You wouldn't want to choose harvesters based on just running a node, as that is too easy to attack (you don't want to make it easy for people to be able to control when they harvest). However, we are currently trying to find a way to reward nodes who are active and also have a reputation for sending valid data (as determined by eigentrust++). The problem is, how do you keep track of the active nodes that are online at any given time?
The easy answers are of course the bad ones. You can just make it centralized with gateways and reward active nodes that way. But of course that is not acceptable.
One thing in crypto is centralized though and that is the information on the blockchain. Maintenance of the blockchain is decentralized, but the actual information in the chain itself is a central point of authority that people feel like they can trust (because the maintenance of it has been decentralized).
Another possibly easy answer would be to have the harvesting node issue a colored coin to each node it sees is active when a block is formed. Yes, not all nodes would get coins, but the nodes that are better connected would and that is a way to reward the more important nodes. This would of course create serious blockchain bloat and would require additional information on the blockchain for each node that received the coin. If coins were really scarce, say like each harvester only gave out 10 coins, then it would keep blockchain bloat down. Each node that had a coin could have their PoI boosted by like 10% or other mathematically sound number. For all this to be done, there would have to be an asset exchange, said asset would be in each node, but could not be managed or influenced by the owner of the node. Somehow the algo of each node would have to take into consideration the colored coin that represented time on the network sending valid data. The more this specific colored coin that a valid and good node has, then the higher its chances of forging. Once a node has forged, all its colored coins that it had collected would be burned and the node would be starting over from scratch.
Since the forging node should be in direct contact with the nodes that will be receiving colored coins, I guess it would have to send each node individually some kind of encrypted key that would be used to unlock the colored coin from the blockchain. So basically the forging node writes to the blockchain that so and so accounts should receive a colored coin but that information is encrypted and then accounts that were to unlock the colored coin would have to have their coin specific one-time passphrase that was generated by the forging node and sent to them directly as they were connecting peers.
Again this algo changing colored coin for contributing to the network would be hard to create, could probably be hacked, and even if it worked would create bloat. Again, a kind of easy way out, but maybe not a good one.
I think NXT has an asset that is awarded to each forging node that makes a block, but it isn't worth much, probably isn't automated as part of the forging process, and definitely has no influence on PoS.
In short, to answer you question. I am really not sure. It seems like a touch question to answer.