Business Cycle in a Macromodel with Oligopoly and Agents’ Heterogeneity: An Agent-Based Approach