// The percepts are passed to the belief-revision function, which updates // the agent's beliefs. protected virtual Beliefs BRF(Beliefs b, List <IPercept> p) { VisionPercept vp = new VisionPercept(); AudioPercept ap = new AudioPercept(); foreach (IPercept ip in p) { if (ip is VisionPercept) { vp = (VisionPercept)ip; } else { ap = (AudioPercept)ip; } } b.Update(vp); b.Update(ap); return(b); }