I had some spare time for technical papers this week (yay), so I read through this.
People sure like to use the word "consciousness" to mean a lot of things, don't they? I would be a little more specific and describe what's in this paper as a model of executive function.
My biggest active question about executive function implementing a goal/need hierarchy is, how should it decide when one level has been "satisfied" so it can move to the next? So I was watching for ideas that might be a help toward answering that question.
For me the most interesting thing in the paper was the bit about using Bayesian optimization to set the constants in the function that calculates the weights. I've been in that position of having a reasonable function that combines multiple variables, and knowing what outcomes I wanted it to yield, but not really knowing how to tune it (outside trial and error). This Bayesian optimization appears to be a formal method for tuning constants based on a set of test cases that are labeled with their desired outcomes. That could be really useful for a wide variety of systems.
There is still important material missing, though. I was thinking about issues like "when should an agent consider its food stockpile to be large enough?" And the agent described in this paper doesn't seem to do any long-term planning or risk assessment; the need weights are only determined by how high its drives are at the moment. So it searches for food and eats until the hunger value becomes negligible, then moves on to other things -- very simple, but also inadequate.
(I was maintaining a stockpile of several months' worth of food long before the coronavirus panic-buying began. That has proven to be a very smart decision! But filling my whole house with canned goods, or turning into a "prepper" who spends every spare minute running a backyard subsistence farm, would be insane. Why did I stop exactly where I did? Why a few months' worth instead of three years' worth? I don't know! This is an example of me following instincts that I can't interrogate, which makes understanding the behavior well enough to replicate it in an AI very difficult.)
Another issue that isn't addressed is the possibility of pathological oscillations. I remember reading somewhere (I forget where) about a hypothetical agent that works on solving whichever need has maximum value right this moment, the way the agent in the paper does. Suppose that it is both hungry and thirsty, but its food and water are in different locations, and it can't carry them. It gets stuck in a horrible loop where it eats one mouthful of food, feels its hunger level drop below its thirst level, runs over to the water, drinks one sip, then runs back over to the food again ...
I assume the test agents in the paper avoid this problem by treating possible actions as atomic events rather than processes. E.g. "eat" could mean "eat all the food you have" or "eat until full," and the need weights aren't re-evaluated until such a discrete action is complete. A more sophisticated version of the agent might need to make finer-grained evaluations, and also have some mechanism for avoiding oscillations. Perhaps what's missing here is an assessment of which of the needs on the table will be easiest (not just possible) to fulfill.