Research article Special Issues

A bounded rational agent-based model of consumer choice

  • In a bottom-up approach, agent-based models have been extensively used in finance and economics in order to understand how macro-level phenomena can emerge from myriads of micro-level behaviours of individual agents. Moreover, in the absence of (big) data there is still the need to test economic theories and understand how macro-level laws can be materialized as the aggregate of a multitude of interactions of discrete agents. We exemplify how we can solve this problem in a particular instance: We introduce an agent-based method in order to generate data with Monte Carlo and then we interpolate the data with machine learning methods in order to derive multi-parametric demand functions. In particular, the model we construct is implemented in a simulated economy with 1000 consumers and two products, where each consumer is characterized by a unique set of preferences and available income. The demand for each product is determined by a stochastic process, incorporating the uncertainty in consumer preferences. By interpolating the data for the demands for various scenarios and types of consumers we derive poly-parametric demand functions. These demand functions are partially in tension with classical demand theory since on certain occasions they imply that the demand of a product increases as its price increases. Our proposed method of generating data from discrete agents with Monte Carlo and of interpolating the data with machine learning methods can be easily generalized and applied to the assessment of economic theories and to the derivation of economic laws in a bottom-up approach.

    Citation: Georgios Alkis Tsiatsios, John Leventides, Evangelos Melas, Costas Poulios. A bounded rational agent-based model of consumer choice[J]. Data Science in Finance and Economics, 2023, 3(3): 305-323. doi: 10.3934/DSFE.2023018

    Related Papers:

    [1] Sami Mestiri . Credit scoring using machine learning and deep Learning-Based models. Data Science in Finance and Economics, 2024, 4(2): 236-248. doi: 10.3934/DSFE.2024009
    [2] Habib Zouaoui, Meryem-Nadjat Naas . Option pricing using deep learning approach based on LSTM-GRU neural networks: Case of London stock exchange. Data Science in Finance and Economics, 2023, 3(3): 267-284. doi: 10.3934/DSFE.2023016
    [3] Mohamed F. Abd El-Aal . Analysis Factors Affecting Egyptian Inflation Based on Machine Learning Algorithms. Data Science in Finance and Economics, 2023, 3(3): 285-304. doi: 10.3934/DSFE.2023017
    [4] Cui Yin Huang, Hong Liang Dai . Learning from class-imbalanced data: review of data driven methods and algorithm driven methods. Data Science in Finance and Economics, 2021, 1(1): 21-36. doi: 10.3934/DSFE.2021002
    [5] Angelica Mcwera, Jules Clement Mba . Predicting stock market direction in South African banking sector using ensemble machine learning techniques. Data Science in Finance and Economics, 2023, 3(4): 401-426. doi: 10.3934/DSFE.2023023
    [6] Sina Gholami, Erfan Zarafshan, Reza Sheikh, Shib Sankar Sana . Using deep learning to enhance business intelligence in organizational management. Data Science in Finance and Economics, 2023, 3(4): 337-353. doi: 10.3934/DSFE.2023020
    [7] Yunus Emre Gur . Development and application of machine learning models in US consumer price index forecasting: Analysis of a hybrid approach. Data Science in Finance and Economics, 2024, 4(4): 469-513. doi: 10.3934/DSFE.2024020
    [8] Yongfeng Wang, Guofeng Yan . Survey on the application of deep learning in algorithmic trading. Data Science in Finance and Economics, 2021, 1(4): 345-361. doi: 10.3934/DSFE.2021019
    [9] Man-Fai Leung, Abdullah Jawaid, Sai-Wang Ip, Chun-Hei Kwok, Shing Yan . A portfolio recommendation system based on machine learning and big data analytics. Data Science in Finance and Economics, 2023, 3(2): 152-165. doi: 10.3934/DSFE.2023009
    [10] Ming Li, Ying Li . Research on crude oil price forecasting based on computational intelligence. Data Science in Finance and Economics, 2023, 3(3): 251-266. doi: 10.3934/DSFE.2023015
  • In a bottom-up approach, agent-based models have been extensively used in finance and economics in order to understand how macro-level phenomena can emerge from myriads of micro-level behaviours of individual agents. Moreover, in the absence of (big) data there is still the need to test economic theories and understand how macro-level laws can be materialized as the aggregate of a multitude of interactions of discrete agents. We exemplify how we can solve this problem in a particular instance: We introduce an agent-based method in order to generate data with Monte Carlo and then we interpolate the data with machine learning methods in order to derive multi-parametric demand functions. In particular, the model we construct is implemented in a simulated economy with 1000 consumers and two products, where each consumer is characterized by a unique set of preferences and available income. The demand for each product is determined by a stochastic process, incorporating the uncertainty in consumer preferences. By interpolating the data for the demands for various scenarios and types of consumers we derive poly-parametric demand functions. These demand functions are partially in tension with classical demand theory since on certain occasions they imply that the demand of a product increases as its price increases. Our proposed method of generating data from discrete agents with Monte Carlo and of interpolating the data with machine learning methods can be easily generalized and applied to the assessment of economic theories and to the derivation of economic laws in a bottom-up approach.



    In this paper we generate data for discrete agents-consumers by using Monte Carlo and then we interpolate the data by using machine learning methods in order to derive multi-parametric demand functions. Our method of generating realistic data and of drawing useful conclusions from them by interpolating them with machine learning methods has been advocated by other researchers (Simudyne, 2023) in a different context. Generating data can be useful or even necessary in a variety of occasions, e.g., when the real data are not available or when they are sparse. We need data in order to test economic theories or in order to derive economic laws in a bottom-up agent-based approach.

    Agent-based models (ABM) have been extensively used in finance and economics (Bonabeau, 2002; Macal and North, 2005; Epstein, 2006; Tesfatsion, 2006; Tesfatsion and Judd, 2006; Buchanan, 2009; Farmer and Foley, 2009; Hamill and Gilbert, 2015). A salient feature of agent-based models is that the aggregate level is not explicitly pre-specified but rather it emerges from the myriad of interactions between the agents. This multiplicity of interactions gives rise to a large amount of complexity that can be manifested in many forms including path-dependence, difficulty of prediction, and qualities that are not analytically tractable from system components and their attributes alone.

    In a series of papers Tsiatsios et al., (2022), Tsiatsios et al., (2023a), Tsiatsios et al., (2023b), we have used agent based models to explore different aspects of consumer demand, consumer choice and firm dynamics. In Tsiatsios et al., (2022), we study the problem of consumer demand between commodities in the framework of agent-based modeling and simulation. In Tsiatsios et al., (2023a), we combine rational consumer theory, Markov processes, and agent-based approach to model consumer behavior and to gain a deeper understanding of how consumers make choices and how those choices impact the economy. In Tsiatsios et al., (2023b), we use an agent-based model in order to study a dynamic distribution of firms in a closed (supply) economy.

    In our proposed model we assume that the agents-consumers are bounded rational and we study how consumer choice shapes demand from an agent-based point of view. In a serial stochastic manner, which constitutes a Markov process, the consumers, by using a stochastic utility function, choose either of two goods until their budget is exhausted. We so obtain data for the demand of the two goods for various consumers. We then interpolate the data by using Gaussian process interpolation and we derive poly-parametric demand functions.

    Therefore, our model touches upon fundamental notions such as consumer choice, bounded rationality of consumers, stochastic utility models, discrete choice modelling and Markov processes. The relevant literature on these notions is very extensive. We give just a few references for each one of them. Consumer choice and behaviour has many aspects and has been studied in many of its facets and scales (Zhong, 2020; Predelus and Amine, 2022; Maravilha et al., 2022; Peña, 2020). The traditional economic theory assumes consumers as perfectly rational beings (Varian, 2014). On the other hand bounded rationality (Simon, 1955; McFadden, 1974; Varian, 2014; Kahneman 2003, Thaler 2015) leads to sub-optimal but satisfactory outcomes. Stochastic utility models account for the uncertainty and unpredictability in consumer preferences (McFadden, 1974; Arrow 1971). The discrete choice modeling, where consumers choose from a finite set of alternatives, has been a fundamental approach in consumer behavior research (McFadden, 1974). Markov processes (Ehrenberg, 1988; Seetharaman, 2004) allow for the introduction of stochastic elements, capturing the uncertainty in consumer behavior over time.

    The methological research scheme put forward in this paper-generate data for the agents in an agent-based model by using Monte Carlo and then interpolate the data by using machine learning methods-can be used in finance and economics in order to test theories and/or in order to derive laws and relations with the agent-based bottom-up approach. This has been also emphasized in Simudyne, (2023) where the usefulness of the scheme is proposed for the bank sector. Using ABM, banks can enhance the realism of their simulations to account for feedback loops, unusual relationships between agents and complex scenarios that include external factors such as climate impact or economic shocks. In Battiston et al., (2016), it is discussed how complexity theory, particularly agent-based models, can be applied to understand financial systems and inform financial regulation. Axtell, Farmer (2022), a vision is presented for how ABMs might be used in the future to build more realistic models of the economy and review some of hurdles that must be overcome to achieve this. In Turell (2016), the importance of agent-based models as a tool for both understanding the economy, and for exploring the consequences of policy actions is given. Moreover, two agent-based models developed by the bank of England for two markets, corporate bonds and housing, are given. In Bookstaber (2017), it is demonstrated how agent-based models move away from a focus on equilibrium, allowing non-ergodic dynamics that are manifest during financial crises to emerge. In Grazzini and Richiardi (2015), a method is presented to estimate agent-based models, bridging the gap between empirical data and simulations. In Mandel et al., (2015), the authors use agent-based models to study the interconnectedness of financial markets and to understand how micro-level behaviors can lead to macro-level instabilities. In Thurner et al., (2012), the role of leverage in financial markets is analysed, explaining phenomena like fat-tailed asset returns. In Manout and Ciari (2021), the role of daily activities and mobility in the spread of COVID-19 is assessed with an agent-based approach. In Assenza et al., (2015), with a specific focus on the roles of capital and credit in an economy, this paper delves into the emergent dynamics that arise in an agent-based simulation. In Delli et al., (2010), the advantages of agent-based modeling in macroeconomics is discussed.

    In this paper we derive multi-parametric demand functions for stochastic consumer choice. The importance of poly-parametric demand functions lies in their ability to capture the effects of various factors on consumer demand, such as substitution and income effects, elasticity, and cross-price effects. They can also be used to test various hypotheses and restrictions derived from consumer theory, such as homogeneity, symmetry, and revealed preference.

    We solve the problem of constructing multi-parametric demand functions in two steps: First, we solve a stochastic optimization utility problem of consumer choice with budget constraint for various types of consumers. The output is demand of goods for various scenarios and various consumer types. Second, we interpolate these data with Gaussian process interpolation and we so derive polyparametric demand functions.

    Aggregate results are not a mere sum of its constituent parts. Emergent findings from our agent-based model using multi-parametric demand functions are multi-faceted and offer new insights. For instance, as the results of our interpolation show, (demand curve for product 2 in Figure 2), some consumers may increase their demand for a product when its price increases, possibly due to the perceived increase in quality or status associated with the product, a phenomenon known as the Veblen effect. Moreover, unexpected impact of bounded rationality emerges in Figure 6 for product 1 where contrary to expectations the demand for product 1 is maximized when the preferences for products 1 and 2 are nearly equal.

    Figure 1.  Demand curves for products 1 and 2 for a consumer A.
    Figure 2.  Demand curves for products 1 and 2 for a consumer B.
    Figure 3.  Demand curves for products 1 and 2 for a consumer Aprob as a function of price and probability.
    Figure 4.  Demand curves for products 1 and 2 for a consumer Bprob as a function of price and probability.
    Figure 5.  Demand curves for products 1 and 2 for a consumer Aprob,money as a function of probability and money.
    Figure 6.  Demand curves for products 1 and 2 for a consumer Bprob,money as a function of money and probability.

    While research in estimating multi-parametric demand functions is extensive, the novel approach of combining ABM, random utility models, and machine learning techniques to derive such functions is unique. Machine learning, in particular, has seen increased use in economics due to its ability to handle large data sets and model complex, nonlinear relationships (Mullainathan, Spiess 2017).

    Our contribution to this existing body of literature is twofold. First, we uniquely integrate the concepts of bounded rationality, ABM, Markov processes, and multiparametric demand functions to model consumer behavior. Second, we introduce the use of Gaussian process interpolation, a machine learning method, to aggregate data from individual agents, providing a novel method to derive multiparametric demand functions. Through simulating a large number of consumer agents, we study emergent patterns of consumer behavior at the macro level, providing fresh insights into how micro-level behaviors can influence macro-level outcomes. This comprehensive approach offers a novel perspective on understanding consumer decision-making processes and their impacts on the economy.

    To summarize, the research objective of this paper is to present within the ABM a concise framework which allows us to generate data by using Monte Carlo and then to interpolate the data by using machine learning methods to obtain multi-parametric demand functions. The innovation/contribution of this method, which as a general scheme has been proposed and used by other researchers (Simudyne, 2023) in a different context, is that in the absence of big data it can provide the means so that economic theories can be tested under various scenarios in various degrees of proximity to the anticipated real data. In this paper we use this general framework in order to derive multi-parametric demand functions of consumers with bounded rationality and study how the demand depends on various factors such as the income of the consumers, the prices of the goods, the stochastic utility function of the consumers, etc. Some of the features of the derived multi-parametric demand functions, such as the demand of a good increases as its price increases, are in tension with the classical demand theory. Thus this data driven agent-based scheme derives macro-level behaviour, the multi-parametric demand functions, by aggregating the micro-level behaviour of myriads of consumers.

    This paper is organized as follows: In Section 2 we give the general setup. In Section 3 we interpolate the data we construct with Gaussian process interpolation and we present the results of the derived simulations. These are multiparametric demand functions for which some of the parameters they depend upon remain constant. In Section 4 we analyse the results of the simulations we derived in Section 3. In Section 5 we give our conclusions and outline prospects for future research.

    We give now the premises of our model and the model design.

    Modelling as usual involves assigning various mathematical objects, operations and frameworks to the economic agents, processes and assumptions and transposes by subtraction the economic problem to a mathematical problem. The validity of results obtained by this quantification is based in the following assumptions and tools:

    1. The choice set is discrete and selection within this set is realized by utilizing an appropriate index. This process of choice is modeled by repeating a simple selection step and thus is sequential, as opposed to the standard "one-off" selection calculation through solving a constrained optimization problem.

    2. The paper also addresses "bounded rationality" (Leijonhufvud 1996), in the modelling of agents appearing in this study. A rational consumer is typically assumed to have complete information about the goods and services available for purchase, as well as their own preferences and budget constraints. The concept of "bounded rationality" recognizes that decision-makers, including consumers and firms, are not perfectly rational and have limitations in their ability to process information, make decisions, and optimize outcomes. Bounded rationality acknowledges that individuals and organizations have limited cognitive abilities and limited information, and they often use shortcuts, rules of thumb, and mental heuristics to make decisions that are satisfactory, rather than optimal.

    3. This paper follows agent-based modelling (ABM) where agents are individual entities with their own characteristics, behaviors, and decision-making abilities. To link the micro-level behavior of individual agents to macro-level outcomes, agent-based models often use bottom-up approaches. This means that the model starts from the individual agent level and builds up to the macro level by aggregating the interactions of many agents. The simulation tracks the behavior of individual agents over time and updates the system state based on the interactions between agents. The result is a macro-level description of the system that is generated from the behavior of individual agents. In this way, agent-based models provide a way to explore how micro-level behavior can influence macro-level outcomes, and how macro-level patterns can emerge from the bottom-up approach. The results of agent-based models can be compared to macro-level data to validate the model and to better understand the relationships between micro and macro levels.

    4. By combining the concept of consumer behavior (Gary et al. 1991; Akerlof 2002; Kaplow 2008; Reisch, Zhao 2017) with Markov processes (Anderson, Goodman 1957; Billingsley 1961; Barbu, D'Amico, De Blasis 2017) and agent-based modeling, researchers can create more realistic models of consumer behavior. The use of Markov processes allows for the introduction of stochastic influence, capturing the uncertainty and unpredictability of consumer behavior over time.

    In this approach, each consumer agent is modeled as an individual decision-maker with their own preferences, goals, and constraints. By simulating the interactions of many consumer agents, the aggregate behavior of consumers can be studied at the macro level. This provides a way to understand the emergent patterns of consumer behavior and how they are influenced by individual and collective decision-making.

    Overall, this combination of rational consumer theory, Markov processes, and ABM provides a powerful tool for modeling consumer behavior and for gaining a deeper understanding of how consumers make choices and how those choices impact the economy.

    Our model economy consists of 1000 consumers who are bounded rational. Each one of them is characterised by a 12-component vector which gives their preferences, their income, as well as the prices of the two available goods. Uncertainty in preferences and therefore bounded rationality is determined by a random utility model. By aggregating the data for the 1000 consumers with machine learning methods, we derive multiparametric demand functions and we thus arrive at a macro-level description of the system that is generated from the behavior of individual agents. We thus provide a way to explore how micro-level behavior can influence macro-level outcomes.

    Given the premises set out in subsection 2.1, the paper utilizes an agent-based model to construct demand functions for consumers or groups of consumers. Specifically, the model consists of the consumers and goods and each consumer is characterized by preferences and available income to spend. Goods are characterized by prices. Uncertainty in preferences is determined by a random utility model. In our case we use an exponential type of utility model with two parameters and utility sets determined by two such functions, each of which is selected at every choice step randomly with probabilities (p, 1-p).

    The utility function for the consumer is defined as:

    u(x)={x1i=1x3x1i4if x1>00otherwise+{x2j=1x5x1j6if x2>00otherwise (1)

    The stochastic demand model works as follows:

    Given a budget M, prices p1 and p2, and the utility function parameters a1,b1,a2,b2,p[0,1], the consumer iteratively decides between buying more of the first or the second good based on their utility for each good.

    At each step, the consumer generates a random number ωU(0,1) and chooses the utility function coefficients ai,bi based on whether ω>p or not. The consumer then calculates the additional utility of buying one more unit of each good as:

    Δu1=u1(x1+1,x2)u1(x1,x2) (2)
    Δu2=u2(x1,x2+1)u2(x1,x2) (3)

    For each consumer possessing a given bundle of goods represented by a vector x=(q1,q2,q3,,qn) the choice set S is the set of n vectors:

    S={(q1+1,q2,q3,,qn),(q1,q2+1,q3,,qn),...,(q1,q2,q3,,qn+1)}.

    The consumer chooses the good with the highest ratio of additional utility to price:

    Good k=argmaxi{1,2}Δuipi (4)

    This process is repeated until the consumer's budget is exhausted.

    The discrete choice is determined by the index (marginal utility)/price, taking into account that marginal utility is calculated as a realization of a stochastic utility model. In the micro level given a consumer of certain observable characteristics (i.e., available income and a random utility model for each consumer and also a set of prices of the goods), a Monte Carlo simulation realizing the previously described process can be done starting from the bundle (0, 0, …, 0), choosing sequentially a unit of product to buy and repeating this until the money of consumer is exhausted. This determines a final vector of demand (¯q1,¯q2,¯q3,,¯qn) for this consumer. This process can be repeated for various consumer groups.

    The formation of demand from the multiplicity of consumers and goods of various preferences and incomes leads to the emergence of a multi-parametric demand function, which relates the observable characteristics of the consumers and prices of the goods to the demands of goods. This demand function can be constructed with various methods and in the case where the amount of data is big and relations are nonlinear, machine learning methods are suitable. The demand prediction model is a random forest, trained on a dataset of the form:

    D={(p,M,a1,b1,a2,b2,p,x1,x2)}ni=1 (5)

    In this paper, we the use Gaussian process interpolation model which predicts the demand for each good, x1 and x2, as a function of the prices, budget, and utility function parameters.

    In our model economy we have a total of 1000 consumers and 2 products. Every consumer is characterized by a 12 component state vector

    (p1,p2,m,a1,b1,a2,b2,a3,b3,a4,b4,prob)T, (6)

    where p1 and p2 are the prices of the 2 products, m is the money of the consumer, a1,b1 and a3,b3 determine the two utility functions of the first product, whereas a2,b2 and a4,b4 determine the two utility functions of the second product. The component prob gives the probability of a1,b1 and a2,b2 to make transition to a3,b3 and a4,b4, respectively, with a Markov chain process. By following the three step programme which follows, we derive multiparametric demand functions. The first two steps are materialized with a Monte Carlo simulation.

    Step 1 If the current bundle of products is (q1,q2), the possibilities A(q1+1,q2) and B(q1,q2+1) are evaluated by first choosing a utility among u1, u2 via the probability selection measure (p, 1-p) and calculating the ratio of marginal utility/price for the two possibilities A, B. The one with the highest ratio is selected. The trajectory of optimal consumption terminates when the income of the consumer is exhausted and the final bundle (¯q1,¯q2) defines the demand of the two products.

    Step 2 An ensemble of 1000 consumers and prices is constructed. An ensemble of 1000 vectors is constructed each of which contains the attributes of the consumer and prices of the 2 goods with the use of a beta distribution so that we obtain heterogenous random consumers. Step 1 is applied and a demand for the two products is calculated. This process gives rise to a data set which corresponds consumer attributes and prices of goods to demand of goods.

    Step 3 For the created set of data calculated in Step 2, Gaussian process interpolation is applied to interpolate these data and create two demand functions, one for each product.

    We give now some of the results of the simulations.

    In Figure 1, Product 1, the demand function for a consumer A of the product 1 as a function of its price is given. The rest of the parameters are given by

    (p2,m,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=(10,1899,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882,0.176273)T. (7)

    In Figure 1, Product 2, the demand function for a consumer A of the product 2 as a function of its price is given. The rest of the parameters are given by

    (p1,m,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=(2,1899,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882,0.176273)T. (8)

    In Figure 2, Product 1, the demand function for a consumer B of the product 1 as a function of its price is given. The rest of the parameters are given by

    (p2,m,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=(7,924,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304,0.240323)T. (9)

    In Figure 2, Product 2, the demand function for a consumer B of the product 2 as a function of its price is given. The rest of the parameters are given by

    (p1,m,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=(2,924,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304,0.240323)T. (10)

    In Figure 3, Product 1, the demand function of product 1 for a consumer Aprob as a function of its price and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p2,m,a1,b1,a2,b2,a3,b3,a4,b4)T=(10,1899,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882)T. (11)

    In Figure 3, Product 2, the demand function for a consumer Aprob of product 2 as a function of its price and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p1,m,a1,b1,a2,b2,a3,b3,a4,b4)T=(2,1899,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882)T. (12)

    In Figure 4, Product 1, the demand function of the product 1 for a consumer Bprob as a function of its price and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p2,m,a1,b1,a2,b2,a3,b3,a4,b4)T=(7,924,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304)T. (13)

    In Figure 4, Product 2, the demand function for a consumer Bprob of the product 2 as a function of its price and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p1,m,a1,b1,a2,b2,a3,b3,a4,b4)T=(2,924,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304)T. (14)

    In Figure 5, Product 1, the demand function of product 1 for a consumer Aprob,money as a function of the money of the consumer and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p1,p2,a1,b1,a2,b2,a3,b3,a4,b4)T=(2,10,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882)T. (15)

    In Figure 5, Product 2, the demand function for a consumer Aprob,money of the product 2 as a function of the money of the consumer and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p1,p2,a1,b1,a2,b2,a3,b3,a4,b4)T=(2,1899,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882)T. (16)

    In Figure 6, Product 1, the demand function of product 1 for a consumer Bprob,money as a function of the money of the consumer and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p1,p2,a1,b1,a2,b2,a3,b3,a4,b4)T=(7,924,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304)T. (17)

    In Figure 6, Product 2, the demand function for a consumer Bprob,money of product 2 as a function of the money of the consumer and the probability of transition in the Markov chain process is given. The rest of the parameters are given by

    (p1,p2,a1,b1,a2,b2,a3,b3,a4,b4)T=(2,924,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304)T. (18)

    In Figure 7, Product 1, the demand function of product 1 for a consumer Amoney as a function of the money of the consumer is given. The rest of the parameters are given by

    (p2,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=10,0.292285,1.05871,0.100436,1.12235,,0.321698,1.58774,0.496347,1.53882,0.176273)T. (19)
    Figure 7.  Demand curves for products 1 and 2 for a consumer Amoney as a function of money.

    In Figure 7, Product 2, the demand function for a consumer Amoney of product 2 as a function of the money of the consumer is given. The rest of the parameters are given by

    (p1,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=(2,0.292285,1.05871,0.100436,1.12235,0.321698,1.58774,0.496347,1.53882,0.176273)T. (20)

    In Figure 8, Product 1, the demand function of product 1 for a consumer Bmoney as a function of the money of the consumer is given. The rest of the parameters are given by

    (p2,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=7,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304,0.240323)T. (21)
    Figure 8.  Demand curves for products 1 and 2 for a consumer Bmoney as a function of money.

    In Figure 8, Product 2, the demand function for a consumer Bmoney of the product 2 as a function of the money of the consumer is given. The rest of the parameters are given by

    (p1,a1,b1,a2,b2,a3,b3,a4,b4,prob)T=(2,0.205183,1.28338,0.410497,1.24444,0.605611,1.36808,0.448373,1.73304,0.240323)T. (22)

    We use machine learning methods, the Gaussian process interpolation in particular, to interpolate the constructed data. For the purposes of our investigation two methods seem to be more appropriate, the Gaussian process interpolation and the random forest. We opted for the Gaussian process interpolation because it is is smooth whereas the random forest is piecewise linear.

    The employed machine learning method extrapolates also to out of sample data to derive the resulting demand functions. The resulting demand functions are multi-parametric and their derivation is data-driven. The main advantage of our work, being data driven, is that it can be applied to real data to give demand functions.

    The actual analytic form of the demand functions derived by the Gaussian process interpolation is quite involved and as expected it is not straightforward to make it intelligible in terms of economic theory. In order to understand the behaviour of the multi-parametric demand functions we keep some of the parameters it depends upon constant while we vary the rest. The result are depicted in Figures 1 to 8. The demand functions for products 1 and 2 of two different consumers as a function of the price of the products when we keep all the other parameters constant are given in Figures 1 and 2. The demand functions for products 1 and 2 of two different consumers as a function of the price of the products and of the probability of transition of the Markov chain process when we keep all the other parameters constant are given in Figures 3 and 4.

    The demand functions for products 1 and 2 of two different consumers as a function of the money of the consumers and of the probability of transition of the Markov chain process when we keep all the other parameters constant are given in Figures 5 and 6. The demand functions for products 1 and 2 of two different consumers as a function of the price of the products and the money of the consumers when we keep all the other parameters constant are given in Figures 7 and 8.

    Some of the results of the simulations are general features of the demand function and expected to hold. For instance, the demand function is expected in general to be a decreasing function of the price of the product. Indeed, this is what is depicted in Figure 1. However, there are results of the simulations which do not comply with the general feature of the demand function as being a decreasing function of the price of the product. This is depicted in Figure 2 for the product 2 where at a certain price of the product the demand vanishes and for prices higher than this the demand increases. We need real data akin to the constructed data in order to examine if this interesting phenomenon occurs in reality and in order to give to it an interpretation in terms of the economic theory.

    This explicates the importance of polyparametric demand functions which emerge from the multitude of individual agent interactions. They elucidate phenomena and relations which cannot be derived from classical demand theory. One such example is the aforementioned increase in the demand for the product 2 as its price increases, as this is depicted in Figure 2. The drawback is that we do not have the explicit analytic form of the derived demand functions. In order to draw information from them we have to depict them graphically as we do in Figures 1 to 8.

    In Figure 3 the demand of the goods 1 and 2 decreases as the prices of the goods 1 and 2 increases. Moreover the demand is, as expected, a decreasing function of the probability, more so for the product 1 and to a lesser extent for the product 2. In Figure 4 this interesting phenomenon occurs again for product 2 where the demand increases when the price increases at a certain level. Moreover, contrary to intuition, neither for product 1 nor for product 2 demand is a decreasing function of probability.

    In Figure 5 for product 1 the demand of the product is a monotonic function of the probability as expected. However, In Figure 5, as far as the product 2 is concerned, the demand when the consumer has a lot of money is not a monotonic function of the probability but it appears to be a concave function of the probability, a fact which is counter-intuitive.

    Another interesting phenomenon is depicted in Figure 6 for product 1. As expected, the demand for product 1 increases as the money of the consumer increases. However the demand for product 1 also increases for probability nearly equal to 0.5, which implies that the demand for product 1 also increases when, contrary to expectations, the preferences of the consumer for products 1 and 2 are nearly equal. In general, one expects that the demand for the products 1 or 2 will be a monotonic function of the probability which drives the preferences of the consumer.

    Other properties which emerge verify our anticipated views. For example, we expect the demand for a product to increase as the money of the consumer increases. This is verified in Figure 7 where for both products the demand increases as the money of the consumer increases, albeit the various demand curves that are the highlighted sections of the two dimensional depicted surfaces have different heights and slopes.

    In Figure 8, we have the interesting phenomenon that firstly appeared in Figure 2 for product 2. In Figure 8 the phenomenon appears for product 1. The demand for product 1 in Figure 8 also increases when the consumer has more money and the price of good 1 increases.

    In this study, we depart from from classical demand theory to develop a novel approach for simulating and analyzing consumer behavior in a market with multiple products. Our underlying framework of agent-based modeling and simulation incorporates concepts from these theories while also diverging from certain key aspects, such as the instrumental rationality assumption and the notion of the representative agent.

    Our agent-based model encapsulates the behaviors of 1,000 of individual consumers, who are divided into heterogeneous groups based on their preferences and income. This heterogeneity is a significant departure from classical demand theory and better reflects the complexity of real-world markets.

    The choice of commodity bundles in our model is serially optimal, and agents exhibit "bounded rationality" as opposed to the strict rationality assumption embedded in classical demand theory. We have incorporated Markov processes to introduce stochastic influence, capturing the uncertainty and unpredictability of consumer behavior over time.

    The computational methodology adopted in this study allows for the generation of dynamic relationships and provides a richer set of information regarding agent behavior compared to the traditional approach in classical demand theory. For instance, our approach offers insights into the trajectory of optimal consumption bundles, expenditure paths for individual agents, and average expenditure paths. These features are unique to our agent-based approach and highlight its potential for delivering more realistic models of consumer behavior.

    By combining Gaussian process interpolation with our agent-based model, we have created multiparametric demand functions that provide a robust and nuanced understanding of consumer demand in relation to product prices, consumer income, and utility parameters. The non-linear relationships emerging from our simulations showcase the potential of this approach to capture the intricate dynamics of a market economy, moving beyond the limitations of traditional demand-supply models.

    Our research not only opens new avenues for incorporating advanced machine learning techniques in economic modeling, but also emphasizes the importance of considering individual consumer behaviors and heterogeneity in economic analyses. This approach allows us to explore how micro-level behavior can influence macro-level outcomes and how macro-level patterns can emerge from the bottom-up.

    In summary, our work comprises of two basic steps that constitute a valid concise methodology (Simudyne (2023)), with applications well beyond our current study. In the first step within the agent-based approach we use the Monte Carlo method to generate data. The data are the demands for two goods of 1000 bounded rational consumers-agents who in sequential discrete steps make their choices for either one of the two goods by using a stochastic utility model which manifests their bounded rationality and by taking into account their income and the prices of the goods. In the second step we interpolate the data by using machine learning methods and derive multi-parametric demand functions that relate both the characteristics of the consumers and the prices of the goods to the demands of the two goods.

    These data driven multi-parametric demand functions are not derived in the classical demand theory and they demonstrate the dependence of the demand on a variety of factors such as the price of the goods, the probability that appears in the stochastic utility model, the income of the consumers, the price of the goods, etc. Some of the characteristics of the resulting multi-parametric demand functions, such as the increase of the demand of one of the two goods as its price increases, come into tension with classical demand theory. We thus arrive at a macro-level description of our model economy that consists of 1000 consumers that is generated from the behaviour of the individual consumers. This is precisely the trademark of the application of ABM to finance and economics: Macro-level outcomes are not postulated but emerge from the micro-level behaviour of individual agents.

    Future work can extend this framework to incorporate more complex scenarios involving multiple goods and services and dynamic changes in consumer preferences and income levels. Moreover, comparing the predictions of our model with macro-level data could enhance our understanding of the relationships between micro and macro levels, providing valuable insights into the functioning of real-world economies.

    In conclusion, this research contributes to the broader field of computational economics by offering a novel, comprehensive approach to understand and predict consumer behavior in a more realistic and nuanced manner. By combining classical economic theories with modern computational techniques, we are better equipped to tackle the complexities and uncertainties of today's market economies.

    The authors declare they have not used Artificial Intelligence (AI) tools in the creation of this paper.

    There are no sources of funding of this study.

    All authors declare no conflicts of interest in this paper.



    [1] Akerlof GA (2002) Behavioral macroeconomics and macroeconomic behavior. Am Econ Rev 92: 411–433. https://doi.org/10.1257/00028280260136192 doi: 10.1257/00028280260136192
    [2] Anderson TW, Goodman LA (1957) Statistical inference about Markov chains. Ann Math Stat 28: 89–110.
    [3] Arrow KJ (1971) Essays in the Theory of Risk-Bearing. Markham Pub Co
    [4] Assenza T, Delli Gatti D, Grazzini J (2015) Emergent dynamics of a macroeconomic agent-based model with capital and credit. J Econ Dyn Control 50: 5–28. https://doi.org/10.1016/j.jedc.2014.07.001 doi: 10.1016/j.jedc.2014.07.001
    [5] Axtell RL, Farmer JD (2022) Agent-Based Modeling in Economics and Finance: Past, Present, and Future. INET Oxford Working Paper No. 2002-10. 21st June 2022.
    [6] Barbu VS, D'Amico G, De Blasis R (2017) Novel advancements in the Markov chain stock model: Analysis and inference. Ann Financ 13: 125–152. https://doi.org/10.1007/s10436-017-0297-9 doi: 10.1007/s10436-017-0297-9
    [7] Battiston S, Farmer JD, Flache A, et al. (2016) Complexity theory and financial regulation. Science 351: 818–819. https://doi.org/10.1126/science.aad0299 doi: 10.1126/science.aad0299
    [8] Billingsley P (1961) Statistical methods in Markov chains. Ann Math Stat 32: 12–40.
    [9] Bonabeau (2002) Agent-based modeling: Methods and techniques for simulating human systems. P Natl Acad Sci 99: 7280–7287. https://doi.org/10.1073/pnas.0820808 doi: 10.1073/pnas.0820808
    [10] Bookstaber R (2017) Agent-Based Models for Financial Crises. Ann Rev Financ Econ 9: 85–100. https://doi.org/10.1146/annurev-financial-110716-032556 doi: 10.1146/annurev-financial-110716-032556
    [11] Buchanan M (2009) Meltdown modelling: could agent-based computer models prevent another financial crisis? Nature 460: 680–683.
    [12] Delli G, Gaffeo E, Gallegati M (2010) Complex agent-based macroeconomics: a manifesto for a new paradigm. J Econ Interact Coor 5: 111–135. https://doi.org/10.1007/s11403-010-0064-8 doi: 10.1007/s11403-010-0064-8
    [13] Ehrenberg AS (1988) Repeat-Buying: Facts, Theory and Applications. Oxford University Press.
    [14] Epstein JM (2006) Generative social science: Studies in agent-based computational modeling. Princeton University Press.
    [15] Farmer JD, Foley D (2009) The economy needs agent–based modelling. Nature 460: 685–686. https://doi.org/10.1038/460685a doi: 10.1038/460685a
    [16] Gary JG, Irwin PL, Goutam C, et al. (1991) Consumer evaluation of multi-product bundles: An information integration analysis. Market Lett 2: 47–57. https://doi.org/10.1007/BF00435195 doi: 10.1007/BF00435195
    [17] Grazzini J, Richiardi MG (2015) Estimation of ergodic agent-based models by simulated minimum distance. J Econ Dyn Control 51: 148–165. https://doi.org/10.1016/j.jedc.2014.10.006 doi: 10.1016/j.jedc.2014.10.006
    [18] Hamill L, Gilbert N (2015) Agent–based modelling in economics. John Wiley & Sons.
    [19] Kahneman D (2003) Maps of Bounded Rationality: Psychology for Behavioral Economics. Am Econ Rev 93: 1449–1475.
    [20] Kaplow L (2008) Optimal policy with heterogeneous preferences. BE J Econ Anal Policy 8. https://doi.org/10.2202/1935-1682.1947 doi: 10.2202/1935-1682.1947
    [21] Leijonhufvud A (1996) Towards a not-too-rational macroeconomics, In: Colander, D. (Ed.), Beyond Microfoundations: Post Walrasian Macroeconomics. Cambridge University Press, Cambridge, MA., 39–55.
    [22] Macal CM, North MJ (2005) Tutorial on agentbased modeling and simulation. Proceedings of the Winter Simulation Conference 14, IEEE.
    [23] Maravilha D, Silva S, Laranjeira E (2022) Consumer's behavior determinants after the electricity market liberalization: the Portuguese case. Green Financ 4: 436–449. https://doi.org/10.3934/GF.2022021 doi: 10.3934/GF.2022021
    [24] Mandel A, Landini S, Gallegati M, et al. (2015) Price dynamics, financial fragility and aggregate volatility. J Econ Dyn Control 51: 257–277. https://doi.org/10.1016/j.jedc.2014.11.001 doi: 10.1016/j.jedc.2014.11.001
    [25] Manout O, Ciari F (2021) Assessing the Role of Daily Activities and Mobility in the Spread of COVID-19 in Montreal with an Agent-Based Approach. Front Built Enviroment 7: 2021. https://doi.org/10.3389/fbuil.2021.654279 doi: 10.3389/fbuil.2021.654279
    [26] McFadden D (1974) Conditional Logit Analysis of Qualitative Choice Behavior. Front Econometrics Zarembka (Ed.) 105–142. New York: Academic Press.
    [27] Mullainathan S, Spiess J (2017) Machine Learning: An Applied Econometric Approach. J Econ Perspect 31: 87–106. https://doi.org/10.1257/jep.31.2.87 doi: 10.1257/jep.31.2.87
    [28] Peña G (2020) A new trading algorithm with financial applications. Quant Financ Econ 4: 596–607. https://doi.org/10.3934/QFE.2020027 doi: 10.3934/QFE.2020027
    [29] Predelus W, Amine S (2022) The insolvency choice during an economic crisis: the case of Canada. Quant Financ Econ 6: 658–668. https://doi.org/10.3934/QFE.2022029 doi: 10.3934/QFE.2022029
    [30] Reisch LA, Zhao M (2017) Behavioural economics, consumer behaviour and consumer policy: state of the art. Behav Public Policy 1: 190–206. https://doi.org/10.1017/bpp.2017.1 doi: 10.1017/bpp.2017.1
    [31] Seetharaman PB (2004) Modeling multiple sources of state dependence in random utility models: A distributed lag approach. Market Sci 23: 263–271. https://doi.org/10.1287/mksc.1030.0024 doi: 10.1287/mksc.1030.0024
    [32] Simon HA (1955) A Behavioral Model of Rational Choice. Q J Econ 69: 99–118.
    [33] Simudyne (2023) A Complete-Guide to Agent-Based Modeling for Financial Services. Simudyne 2023.
    [34] Tesfatsion L (2006) Agent-Based Computational Economics: A Constructive Approach to Economic Theory. Handb Computat Econ 2: 831–880. https://doi.org/10.1016/S1574-0021(05)02016-2 doi: 10.1016/S1574-0021(05)02016-2
    [35] Tesfatsion L, Judd KL (2006) Handbook of computational economics: agent-based computational economics. Elsevier.
    [36] Thaler RH (2015) Misbehaving: The Making of Behavioral Economics. W. W. Norton & Company.
    [37] Thurner S, Farmer JD, Geanakoplos J (2012) Using agent-based simulations, this work discusses the role of leverage in financial markets, explaining phenomena like fat-tailed asset returns. Quant Financ 12: 695–707.
    [38] Tsiatsios GA, Kollias I, Melas E, et al. (2022) Some first results from an agent–based model of consumer demand. submitted.
    [39] Tsiatsios GA, Leventides I, Melas E, et al. (2023a) A bounded rational agent-based model of consumer choice. submitted.
    [40] Tsiatsios GA, Leventides I, Toudas K, et al. (2023b) An agent–based study on the dynamic distribution and firms concentration in a closed economy. submitted.
    [41] Turell A (2016) Agent-based models: Understanding the economy from the bottom up. Bank England Quart Bull 2016.
    [42] Varian HR (2014) Intermediate Microeconomics: A Modern Approach. W. W. Norton & Company.
    [43] Zhong Li Z (2020) Impact of economic policy uncertainty shocks on China's financial conditions. Financ Res Lett 35: 101303. https://doi.org/10.1016/j.frl.2019.101303 doi: 10.1016/j.frl.2019.101303
  • This article has been cited by:

    1. Georgios Alkis Tsiatsios, John Leventides, Evangelos Melas, Costas Poulios, A bounded rational agent-based model of consumer choice, 2023, 3, 2769-2140, 305, 10.3934/DSFE.2023018
    2. Kun Liu, Chunming Tang, Privacy-preserving Naive Bayes classification based on secure two-party computation, 2023, 8, 2473-6988, 28517, 10.3934/math.20231459
  • Reader Comments
  • © 2023 the Author(s), licensee AIMS Press. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0)
通讯作者: 陈斌, bchen63@163.com
  • 1. 

    沈阳化工大学材料科学与工程学院 沈阳 110142

  1. 本站搜索
  2. 百度学术搜索
  3. 万方数据库搜索
  4. CNKI搜索

Metrics

Article views(2181) PDF downloads(120) Cited by(2)

/

DownLoad:  Full-Size Img  PowerPoint
Return
Return

Catalog