Agent simulation using object-oriented methodology