I’m a new person to AI field and I have to research and compare two different architectures for a thesis I’m writing.
Before you scream (homework thread), I’ve been reading on these two topics only to find that I’m confusing myself more.. let me first start with stating briefly what I know so far.
Subsumption is based on the fact that targets of a system are different in sophistication, thus that requires them to be added as layers, each layer can suppress (modify) the command of the layers below it, and there are inhibitors to stop signals from execution lets say.
PCT stresses on the fact that there are nodes to handle environmental changes (negative feedback), so the inputs coming from an environment go through a comparator node and then an action is generated by that node, HPCT or (Hierarchical PCT) is based on nesting these cycles inside each other so a small cycle to avoid crashing would be nested in a more sophisticated cycle that targets a certain location for example.
My questions, am I getting this the right way? am I missing any critical understanding about these two models? also any idea where I can find simplified explanations for each theory (so far been struggling trying to understand the papers from Google scholar).
Edit:
-
The acceptable result would be to compare and contrast subsumption with PCT as alternative control structures in behaviour-based robotics.
-
The experiments will be done on Mindstorm NXT 2.0 robot and the implementation will be done using PureData.
-
I’m not seeking complex behavior, only several models that will demonstrate capabilities of PCT and Subsumption and come up with weaknesses and strengths about each approach.
-
As for the other points ‘rwong’ mentioned, I don’t believe they’re part of my research scope.
my main target here is to get he concepts fully understood as this is my critical phase to implement a fully correct solution that would allow the comparison
Yes, you have the basic concept for both of these correct. And as you have found, they are very similar. In some ways, you can consider PCT a particular implementation of Subsumption. So, here is a quick breakdown of their similarities and differences:
Similarities:
- Have nodes or layers that typically attempt to accomplish one task. In the case of a robot, that task can be obstacle avoidance. With PCT, your design would explicitly use negative feedback (eg maximize distance to other objects).
- Lowest level layers/nodes are typically connected directly to a sensor(s) (on a robot).
- Higher level layers/nodes typically have inputs from a lower level(s) and potentially another sensor. Think wander behavior – your robot wants to move around AND has to avoid obstacles. Given that with simple obstacle avoidance, there is always something to avoid, wander needs to integrate the relative immediacy of obstacle avoidance with the higher level goal of exploration. Negative feedback approach to wander (a simple example for PCT purposes) would be to maximize the sum of your position differences and heading – picking constants that let the position grow faster than heading.
Differences:
- PCT pretty much asks you to explicitly design negative feedback behavior.
- Subsumption can require more information from downstream layers for decision making (yes, I need to avoid an obstacle but is the obstacle right next to me or 100 ft away?)
- You could probably write out a single transfer function that combines all the hierarchies of PCT and do some normal control system analysis (stability, controllability, etc), subsumption’s flexibility on your layers can make this harder since you can mix/match algorithms on how each one accomplishes it’s goals