1 Introduction

2 Key Considerations for Effective Agents

3 Single Agent Architectures

4 Multi Agent Architectures

5 Discussion and Observations

6 Limitations of Current Research and Considerations for Future Research

7 Conclusion and Future Directions