Problem Solving in Crowd Management Using Heuristic Approach

There are many problems that procedural algorithms can solve efficiently. However, these algorithms are sometimes too slow to abide by the time available for performing the solution; other times, it is impossible to get a solution using procedural algorithms. A heuristic method is a practical approach that can reach an approximation of an efficient solution where the optimum is not guaranteed. Heuristic techniques are applied in many real-world problems, including crowd management; using heuristic-based models helped to comprehend crowd behavior better and increase simulation reliability. This paper reviews many heuristic-related articles to gather the aspects of the topic in one place and clear the fuzziness to make it easy to comprehend. The paper covers some of the previous works with similar approaches and presents state-of-the-art heuristic solutions for real-world problems. These techniques are discussed under three classifications: simple heuristics, meta-heuristics, and hyper-heuristics. Most importantly, the paper explores the heuristic role in crowd field problems concluding that heuristics are primarily applied in modeling when it comes to the Crowd field. It investigates different heuristics for crowd management. The main intent of this review is to establish a comprehensive understanding of heuristics-related operations in the crowd management field. Moreover, it aims to support other researchers’ future work and fill research gaps by highlighting the absence of crowd problems from heuristics literature and the limitations of each heuristics approach.


I. INTRODUCTION
Problem-solving methods aim to provide solutions to specific problems. Typically, algorithms provide procedural steps that guarantee to reach a satisfactory solution in trade of some cost of time or other weights. The optimal solution is the one that sufficiently satisfies the solution with the lowest cost. Where algorithms provide clear steps to reach a solution, heuristics educates the decision-making process to solve the problem instead of offering the solution directly. This distinction inherits more detailed differences in solution optimization, The associate editor coordinating the review of this manuscript and approving it for publication was Shuihua Wang . linearity, and architecture. Though it cannot guarantee a solution, heuristics can sometimes be the more practical and effective problem-solving approach to a satisfactory solution than procedural algorithms. It is like a recursion algorithm that checks its conditions over time and calls the suitable corresponding functions. These conditions represent the online function that evaluates the parametric inputs and beliefs to decide the following actions over time. This makes heuristics the most suitable solution for artificial intelligence (AI) bots and multi-agent systems (MAS).
First, starting with the difference between heuristics and algorithms in terms of optimization, the optimal solution is the one that sufficiently satisfies the problem conditions with the minimum cost. Engineers and developers usually adopt the possible solutions and decide which one to use based on performance metric evaluations like the asymptotic analysis. Such evaluations need to consider two things. First, all the compared solutions must sufficiently satisfy the problem. Second, the evaluation test can clarify the significance of the performance, and this means asymptotic analysis, for example, is suitable only when the algorithms belong to different levels of BigO.
When it comes to linearity, problems can be classified as linear or non-linear problems. The linear problem can be interpreted as solving an optimization problem concerning the linear objective function, subject to linear inequality and linear equality constraints [1]. Linear problems are intrinsically simpler and easier to solve, while in general non-linear problems, the solution becomes more complex [1]. If we consider a non-polynomial NP problem, the feasible solution is any solution that satisfies the constraints [2]. There are possible options that are common strategies adopted to develop an algorithm for a given optimization. The first option is to arrive at a good algorithm that always finds the optimal solutions. The simplex algorithm for linear programming is a good example. However, its worst-case complexity is exponential [3]. The second option is to obtain a computationally feasible algorithm that ''almost'' always finds optimal solutions. The third option is to achieve a computationally feasible algorithm that obtains ''reasonably'' reasonable feasible solutions. Heuristic algorithms have this property. It is an approximation algorithm if the heuristic algorithm is guaranteed to find feasible solutions that have value within a prespecified amount of the optimal value. Two measures are considered here: algorithm complexity which refers to the cost, and solution quality which refers to the efficiency probability.
In terms of architecture, algorithms used in problemsolving sometimes are too slow or fail to find the solution in a reasonable time, while heuristics may find a reasonable guess that is good enough for the problem at hand-this introduced heuristics to problem-solving and decision-making. The heuristic solution may not be the fastest or cheapest of all other solutions or approximate the exact solution. However, it provides a shortcut to reaching a goal in a relatively short time. Moreover, it is the best choice for making quick and informed decisions when problem features are missing and actual data is unavailable or too limited to use in complex problems. This feature made it a well-known approach in operational research, computer science, and artificial intelligence. More problems will be covered in the following sections.
Heuristics is the feasible option for the computational complexity of many problems where the optimal solution cannot be found in a short time. Some problems may be based on inaccurate data, so the solution based on estimated data is not optimal for the actual data. In such scenarios, i.e., computationally complex and ill-defined problems, a good solution that is near-optimum is preferred rather than optimal.
Also, it may require several solutions to make the final decision, mainly in cases where several criteria need to be adjusted using human judgment [4]. These problems involving multiple and conflicting objectives typically yield a set of trade-offs, e.g., the accurate solution versus the fastest one.
While algorithms use procedural steps, heuristics use recursion structure to solve the running problem based on online inputs and offline conditions. Some of the heuristic's implementations are in transportation, manufacturing, military, and the management of other industrial logistics.
For the Crowd field, the use of heuristic-based models helped comprehend crowd behavior better and increased the reliability of simulation.
In moving pedestrian crowds, the decisions made by individuals over different routes affect the distribution of individuals.
Understanding collective behavior is essential for academic and practical purposes such as safety and management.
It is crucial to study the mechanisms that impact pedestrian route choice. Specifically, it is focused on the effects of time-independent information such as path lengths and timedependent information as in queue lengths. Some rules can give a model a realistic crowd reaction, such as following the lead and stopping or avoiding a collision.
However, the lack of coverage and the understanding of this topic remains noticeable. This fact encouraged the objectives of this work, which are to present the latest work in heuristics concerning problem-solving in crowd management, discuss the challenges, and suggest additional ways to apply heuristics in the Crowd field.
The paper will essentially focus on heuristics through a defined classification: simple heuristics, meta-heuristics, and hyper-heuristics. Furthermore, it will address the role of heuristics in crowd studies and modeling in a comprehensive survey.
The structure of this paper is composed of five sections. The first section is the introduction. The second section provides an overview of recent reviews and surveys on heuristics, while it also summarizes further work related to this topic and crowd topics. The third section offers a background on the topic. The fourth section discusses the types of heuristics (i.e., their features and shortcomings) and proposes heuristic approaches for classifying and predicting crowd behavior. Finally, the last section concludes the paper.

II. RELATED WORK
Many of the earlier work has been focused on developing the formulations of the problem and their implementations using experimented heuristic and metaheuristic search techniques and their variations. It extends to automating problemsolving using hyper-heuristics. This section provides a comprehensive literature review regarding heuristics in computer science, operational research, and artificial intelligence. It explores perceptions about other review and survey researches of the related fields. Furthermore, it provides a VOLUME 10, 2022 look over some of the related works which have influenced this research.
It becomes apparent how the field requires more coverage of the subject, especially in crowd studies, in which heuristics are one of the most applied approaches in crowd modeling, simulation, and decision support systems. Hence, this paper contributes to the field by summarizing and categorizing the state-of-art heuristics and problem-solving in crowd management using heuristic techniques. It extends to involve other fields adequately besides crowd study.
The work of Müller-Merbach [5] presented designoriented heuristics in a relatively traditional and thorough survey. It presented the typical problems mentioned, which most of them are optimization problems, i.e., an optimal solution out of the feasible solutions is sought.
Another paper that discusses heuristics in a design theory is the paper of Gregory and Muntermann [6]. They defined heuristic theorizing as the process of proactively generating design theory for prescriptive purposes from problem-solving experiences.
A comprehensive article reviews the classical and heuristics algorithms for coverage path planning (CPP) in robotics to explore the solution space and find the optimal trajectory [7].
Gao et al. [8] reviewed the state-of-the-art of this meta-heuristics to identify the current status of meta-heuristics solving disassembly line balancing, planning, and scheduling problems (DLBPSP) in remanufacturing.
Previously [9], the authors reviewed the nature-inspired algorithms used in metaheuristic solutions. Such as bee colony optimization (BCO), particle swarm optimization, harmony search optimization, ant colony optimization (ACO), genetic algorithm (GA), firefly optimization, cuckoo search optimization, bat algorithm, memetic algorithm, symbiotic organism search optimization, simulated annealing, shuffled frog leaping algorithm, spider web algorithm, and hybrid algorithms.
The authors in [10] reviewed different heuristics for shorter cellular manufacturing systems (CMSs), where designing and implementing effective CMS involves many problems such as cell formation, machine layout, alternative process routes, and inventory lot sizing. Therefore, the meta-heuristic algorithm with hybridization is essential to address multiple optimization problems.
The work of Mostafaie et al. [11] reviewed meta-heuristics approaches for solving the graph coloring problem in a systematic review. Covering the algorithms and highlighting the significance of meta-heuristic optimization algorithms and several advantages they provide to tackle challenges associated with graph coloring.
Lei and Cai [12] presented another work contributing to production scheduling in manufacturing, which also addressed meta-heuristics in a survey. First, a new classification of scheduling problems is given, then three algorithms are described and their scheduling applications in a systematic review.
The work of Burke et al. [13] introduced hyper-heuristics in a thorough survey paper, including their origin and intellectual roots, the main types of approaches, and an overview of some related areas. The paper also surveyed the heuristic selection and move acceptance strategies (heuristic to choose heuristics) the heuristics generation (heuristics to generate heuristics). It further covers the application domain and the offline and online approaches.
Later on, in the work of [14], the authors continue to explore the classification of heuristics generation and selection and provide state of the art in hyper-heuristics in a comprehensive literature survey.
In Table 1, the paper investigates further related works by briefly reviewing the problems solved by heuristics algorithms and classifying them according to the problem category and the algorithm used in solving the problem. The heuristic techniques are applied and involved in many different fields such as supply chain, transportation, and logistics industry [15]- [20], network problem design [21], [22], machine computing [23]- [25], cloud computing [9], engineering problem design [26], smart cities and parking [27], military operations [28].
Crowd studies particularly have brought the attention by employing heuristic solutions in some areas of crowd applications. For example, in experimental analysis work [29], the crowd monitoring is mapped as a moving target traveling salesman problem (TSP) instance. Experimental evaluation of different heuristics approaches is done to the analyzed problem, and the solution was in favor of the genetic algorithm. In another work in crowd management [30], the system uses the Viola-Jones face detection algorithm to keep a count of the visitors' numbers at railway stations throughout the day and a heuristic data mining technique to analyze the stored data suggest the required action. Also, understanding the mechanisms of crowd dynamics compels involving the local behavior of pedestrians during interactions and the global behavior of the crowd at high density. For this, the author elaborated with a model using simple heuristics in [31], likewise deriving a hierarchy of kinetic and macroscopic models from a noisy variant of the heuristic behavioral Individual-Based Model [32].

A. INTELLECTUAL ROOTS, ORIGINS, AND DEFINITIONS
The concept of heuristics started to be more common in the sixties, where the word heuristics is originally derived from the Greek word heurisken, the word means investigating or discovering a persuasive solution rather than compelling [48], [49]. According to the Cambridge dictionary, heuristics definition is ''a method and a way of learning or solving problems which allow people to discover things themselves and learn from their own experiences.'' This definition implies the meaning of heuristics as approximate strategies or 'rules of thumb' for decision making and problem-solving that do not guarantee an exact solution but typically yield an acceptable solution or bring up one  faster [50]. Heuristics are famous for construction heuristics, using greedy methods that build solutions via iterations and descending heuristics that seek a local optimum from a given solution. It also depends on the problem to find a solution that will likely be the local optimum, mainly to select the nearest neighbor. In other words, when we think of iterative algorithms, heuristics comes up first to the mind, i.e., the converging algorithms and the algorithms with no proved convergence [5]. Heuristics can be used in intelligent systems while searching within the solution space. They are problemspecific approximation solutions, which means the problem is known in advance, and some features of the given problem are available to find solutions. There are numerous implementations of heuristics applications for transportation, planning, and other optimization problems.
Soon after, the complexity of problems has increased, and the conventional methods became more time-consuming to solve these problems. Later, a higher level of heuristics was introduced in the late seventies, called meta-heuristics [8]. The Greek prefix ''meta'' presented in the name indicates that these algorithms are ''higher level'' heuristics. A metaheuristic method is designed to solve a wide range of challenging problems without deeply adapting to each problem. In contrast to problem-specific heuristics, metaheuristics are problem independent. These methods are used when (I) a piece of incomplete or imperfect information about problem features, (II) a limited computational capacity, and there is a need for a fast, sufficient solution rather than an optimal one for an optimization problem. Some metaheuristics implementations are in generic block-chain and general machine learning problems.
Despite the widespread of heuristic and meta-heuristics search methods in solving real-world computational search problems, there are still some difficulties facing their application to newly encountered problems or even new instances of known problems due to the rapid increase of resources, capabilities, and problems complexity.
Hyper heuristics was introduced at the beginning of the 2000s to automate heuristic methods' design and tuning to solve complex computational search problems [13], [14]. The main point here is that hyper-heuristics techniques do not search the space of solutions directly; instead, they explore heuristics and the heuristics combination. There are two types of hyper-heuristics: iterative hyper-heuristics and constructive hyper-heuristics. The first receives an initial ''base'' solution, and, at every iteration, a low-level heuristic is applied to produce a new solution s 0 . It becomes the new base for the following iterations if it is better than the prior one. It may either be discarded or still become the new base with a certain chance if it becomes worse. The way to automate and apply the selection of low-level heuristics (LLH) is approached differently. The second type, which is more challenging, is where the high-level heuristics (HLH) select a sequence of lower ones to build a solution for the problem from scratch.
The last few years have seen an increase in the number of successful implementations of hyper-heuristics for problems such as production scheduling, timetabling, mapping, routing, and other related ones.

B. METHODOLOGIES AND USES
Naturally, the intention of the previous types of heuristics techniques and their applications in real-life problems differentiate them. This section presents some heuristics methodologies and applications. Table 1 refers to further works in this matter.

1) HEURISTICS
Most of the simple heuristic algorithms are applied for industrial logistic problems such as transportation and manufacturing fields.
In paper [34], to obtain the initial basic feasible solution (IBFS) of transportation problems, a heuristic method called Bilqis Chastine Erma method (BCE) was proposed, which obtained the lower total minimum cost. Another application example of real-life transportation planning using heuristics is carpooling [51]. The authors transformed the original Multiple Criteria Carpooling Optimization (MCCO) problem and assigned greedy heuristic algorithms for passenger assignment and route planning. Additional work that solves the transportation problem using greedy algorithms [52].
The study [53] proposes an adaptive extensive neighborhood search (ALNS) heuristic for robust gate assignment problems (GAP). The purpose of GAP is to assign a gate to the flight activities, including arrival, parking, and departure for a set of aircraft. A typical hub airport has over one hundred gates and more than one thousand flight activities on operation days. GAP's typical objectives include maximizing the airport's one-day throughput, maximizing airline preference, and minimizing towing time. Additional work incorporating heuristics in this field solved aircraft landing problems with a single runway [54]. The authors provide a decompositionbased adaptive large neighborhood search heuristic in which they split the aircraft landing problem into two sub-problems of scheduling and feasibility.
Other work tackles the problem of manufacturing system reconfiguration, known as the scalability problem [55]. The problem is defined as the ability to adjust a manufacturing system's production capacity through reconfiguration with minimal impact on time and cost. A set of practical principles is introduced to seek feasible configurations; a genetic algorithm is designed to search in the global solution space. Finally, an objective balancing function is defined and used to rank the proposed configurations.
Heuristics techniques are also applied to solve routing problems. The VRPSPDTL, which is the abbreviation for Vehicle Routing Problem with Simultaneous Pickup and Delivery with Time Limit, is a variant of the fundamental Vehicle Routing Problem where the vehicles serve delivery and pick up operations of the clients under time and movement restrictions limit. The VRPSPDTL assigns a set of vehicle routes originating and terminating at a central depot with the total travel distance minimized. This problem is also a neighborhood search algorithm combined with the classic savings heuristic, variable neighborhood search, and a proposed perturbation mechanism [56]. Further work solves the truck and trailer routing problem (TTRP), a variant of the vehicle routing problem using simulated annealing heuristics [57].
Designing routes for a transit network is a multi-criteria decision-making problem requiring a large solution space to find an optimal solution. Therefore, the authors [58] used a stochastic beam search algorithm with a heuristic-inspired successor operator.

2) META-HEURISTICS
For task Allocation, the paper [59] presented a model to solve the component allocation problem instances and implemented two metaheuristics. The first is a genetic algorithm, and the second is an Ant Colony Optimization algorithm. Although genetic algorithms are widely used to solve component allocation, the paper is the first to implement the ant colony optimization algorithm.
Another critical problem category is scheduling. The authors in [39] introduced a meta-heuristic approach using a variable neighborhood search algorithm for the just-in-time job-shop scheduling (JIT-JSS) problem. Similar to the classical job-shop scheduling problem, the jobs in JIT-JSS have operations that must be performed on the machines in a given order. Each operation has a specific due date, earliness, and tardiness penalty coefficients, and any deviation of the operation completion time from its due date incurs an earliness or tardiness penalty.
A meta-heuristic model is developed for resourceconstrained project scheduling problems (RCPSP) [60]. This problem's primary purpose is to find an optimal schedule of activities to satisfy realistic constraints like resource limitation and predecessor relations. They consider twohybrid multi-objective teaching-learning-based optimization (TLBO) algorithms with a new solution structure based on essential and main concepts of multi-objective particle swarm optimization and multi-objective invasive weeds optimization algorithms to find near-optimal solutions of the model's complicated instances in a reasonable computational time.
Finding effective solutions for the transportation problem is one of the leading industrial and academic concerns.
The work [22] proposes an optimization model and a metaheuristic algorithm for solving the urban network design problem. The problem involves optimizing an urban road network's layout by designing directions of existing roads and signal settings at intersections. A proposal for a Scatter VOLUME 10, 2022 Search algorithm based on a random descent method was made and overcame the local optimum.
Furthermore, in work [61], the fuzzy fixed charge solid transportation problem (FFCSTP) considers the variable cost for transporting a batch of products. The fuzzy values are used per the parameter's value in the real world, and six metaheuristics are utilized to solve the model. Most of these algorithms are used for a mathematical model in transportation problem literature. Tuning the parameters is very important in solving the given problem; therefore, the Taguchi method is used.
Many works have investigated the vehicle routing problem with time windows. One of them is construction [19], dispatching the required prefabricated components to construction sites in a prefabricated system using an improved artificial bee colony (IABC) algorithm.
In another study [62], the authors considered applying an ant colony optimization meta-heuristic to hybrid flow shop scheduling problems with minimizing the earliness-tardiness penalties.

3) HYPER-HEURISTICS
Scheduling is essential in the success of enhancing the performance of information systems. Most job and task scheduling problems performed on cloud computing systems are still either NP-hard or NP-complete. A hyper-heuristic algorithm is proposed to schedule cloud computing systems in [47] to reduce the makespan. Two detection operators -one for diversity detection and one for improvement detection-are proposed for the proposed algorithm to determine the timing to employ the low-level heuristic algorithm. The proposed algorithm can be applied to both sequence-dependent and independent scheduling problems.
Another article [42] proposed using an illumination algorithm called MAP-Elites to train sequence-based hyperheuristics for the balanced partition problem. It is found that training with ME yields better results even in their lousy performance levels than randomly selected heuristics.
A hyper-heuristic approach is used to solve the emergency railway transportation planning problem [46]. The authors struggled to select an evolutionary algorithm and avoid selecting the appropriate EA for every problem instance. They proposed integrating the following three evolutionary operators into a hyper-heuristic algorithm. The algorithm includes differential evolution DE, fast evolutionary programming (FEP), comprehensive learning PSO (CLPSO) operators.
The work of [45] proposes a hyper-heuristic based on scatter search (SS-HH) to solve examination timetabling problems. The scatter search operates at a high level of abstraction, which intelligently evolves a sequence of lowlevel heuristics -each of them represents a single neighborhood structure-to use for a given problem.
Another exciting application of hyper-heuristics is in fuzzy logic systems. In the model [44], a GA is responsible for finding the fuzzy rule set that maximizes the fuzzy inference system's performance. The GA used in this work is a custom discrete version of the original GA, where the genes can only have integer values, i.e., 1, 2, 3, or 4, representing the heuristic selected by the fuzzy rule.
Another aspect is the network mapping and routing. A genetic hyper-heuristic algorithm is used in mapping and routing [63] to co-optimize network-on-chip (NoC). The algorithm consists of bottom-level optimization, including various operators, and top-level optimization, selecting suitable operators through a 'reward' mechanism.
In paper [64], the authors propose a multi-objective hyperheuristic (MOHH) framework for route planning for walking in a smart city. The authors design a set of low-level heuristics in the search framework to generate new routes. Moreover, adopt a reinforcement learning mechanism to select good low-level heuristics to accelerate searching speed. The study further improved the reinforcement learning-based multi-objective hyper-heuristic (RL-MOHH) algorithm and implemented a parallel version (RL-PMOHH) to obtain 80% optimal solutions in a large-scale road network.
A hyper-heuristic algorithm (HH) that consists of two levels, high-level heuristics and low-level heuristics, is proposed to solve the time-dependent green location routing problem with time windows (TDLGRP) [65]. The study objective is to minimize costs, including opened depot costs, enabled vehicle costs, and fuel consumption costs.

C. HOW HEURISTICS IS RELATED TO CROWD MANAGEMENT
Many crowd management works featured the search and decision-making problems that pursued heuristics approaches.

1) CROWDSOURCING
Crowdsourcing is growing in both industrial and academic fields by introducing new ways of conducting work, improving the understanding of utilizing crowds' potential, and improving crowdsourcing platforms and related practices.
The article [66] proposed a heuristic methodology for Crowd-Based Cooperative Task Allocation (CBCTA) that aims for effective management, coordinated use of crowd resources, and maximization of swarm intelligence. The methodology hinges on evolutionary heuristics to find proper resources that optimally balance matching rates and collaborative quality. The mathematical formulation of the optimal design of CBCTA is produced as a multi-objective optimization problem to find the optimal solution. The author resort to the well-known NSGA-II algorithm. The proposed CBCTA strategy is proven feasible and effective by conducting experiments with different scales of CBCTA problems.
In experimental crowdsourcing work [67], the authors presented a set of heuristics-relevant design guidelines for online communities-to support the expert evaluation of crowdsourcing platforms. Then, they used the guidelines to compare 20 crowdsourcing platforms. Heuristics can be utilized as a tool for crowdsourcing platforms, which raises a research point and proves that heuristic is not necessarily the search algorithms for mere optimization but could also be a modular approach followed to evaluate a design or make a decision.

2) SIMULATION
Heuristics methods were mainly used in simulation and crowd modeling [68]. Human crowds display a wide variety of collective behaviors that support an efficient motion under conditions such as collision avoidance and pushing, bypassing, backward motion, and not touching other pedestrians.
The heuristic force-based model has been widely used to describe the pedestrian's flow problem. In the model, the dominant component is finding the optimal direction for the pedestrian. The force-based models describe the moving behavior of pedestrian i as the self-driven force f D i , the contact force f C i , and non-contact force f S i , all summed up to give the total force exerted on pedestrians. Moreover, an individual's location and velocity v can be updated using Newton's second law [31].
The remote repulsive force on particles being given by the sum of binary interactions and the calculation of self-driven force depending on the desired direction given by a fixed value may lead to undesired effects and unrealistic movement. In [69], the authors propose a cognitive science approach based on two behavioral heuristics, which overcome the previous problems. The first heuristic was that a pedestrian chooses the direction α des that allows the most direct path to destination point O i , considering obstacles. The second is a pedestrian who maintains a distance from the first obstacle in the chosen walking direction, ensuring a time to collide at least τ . In other words, the speed v des (t) is given by (1): where d h is the distance between pedestrian i and the first obstacle in the desired direction α des at time τ . The same approach goes for [70], with a slight modification in the cognitive heuristics formulation. The model considers the presence of other pedestrians, the step, and the body size and considers the Imitate the Majority Heuristic [71], in which pedestrians walking behavior influence each other. In the paper [72], the authors investigated the impact of variable body sizes on direction choice and performed simulation using an improved heuristics-based work model [69]. The cost of adjusting body size is added into the function for optimal direction choice; with the different body size costs, the pedestrian will choose different directions.
The first available kinetic and fluid models were proposed in [32], a hierarchy of three macroscopic models, also derived from the heuristic behavioral Individual-Based Model of [69].
In another heuristics-based crowd modeling approach [73] based on the latter [69] and the Voronoi diagram, the authors consider the local density besides the location, velocity, the neighbor, and the safe distance for the recognition stage and the walking direction and the velocity in the reaction stage.
An agent-based pedestrian behavioral simulation model is presented in work [74] using simple heuristics for exploratory navigation. The model includes the visibility graph analysis (VGA) into the section-and-portal graph for quantifying the exploratory navigation performance of pedestrians. The model focuses on individuals for natural movement and realistic choices, the sensitivity of the model indicates that regional target, the memory of visiting records, and individual crowd tendency can indeed influence the pedestrians' navigation decisions and movement patterns.
In a more recent article [75], the authors proposed a modified heuristic force-based model that simultaneously takes contact forces as the information that affects self-driven forces. The authors expressed self-driven forces through static friction, explaining that pedestrians' motion is dependent on the static friction between pedestrians and ground, which was a different take that has not been considered before.

IV. DISCUSSION
In general, heuristic methods are used to eliminate one of the following two challenges. The first one is to abide by the time limits where the optimal algorithm could not. The second one is to add linearity to a non-linear problem. The first challenge is straight and easy to measure. The second challenge is debatable, and its convention belongs to the presence of NP problems and whether they belong to polynomial problems or not [76]. In both cases, shifting the action orders from the overall offline program to online recursive subprograms would automatically add linearity as online applications are always linear. Moreover, adding an expert system to the program will make the heuristic application fully functional and self-directed toward optimization.
Despite the fact that heuristics approaches are utilized in various fields, the topic of heuristics is still fuzzy. Some studies provided a brief review of the topic, while others merely focused on a specific type of heuristics and its advanced applications. This section provides an overview of the heuristic types and their possible applications in the crowd management field.

A. HEURISTIC TYPES COMPARISON
As presented earlier, heuristics have been reviewed separately and from various points of view. Heuristics are problemdependent when searching the solution space; they adapt and exploit the given features of the problem, have a deterministic nature, and are usually iterative algorithms. Due to their higher demanding or resources, the heuristic function should be as greedy as possible. Sometimes, this makes them stuck in local optimum and fail to obtain the optimal global solution, especially in complex problems.
The need to avoid the optimization problem and to have a more straightforward implementation of heuristic methods led to the emergence of the meta-heuristic. Meta-heuristic is a problem-independent method that does not take advantage of the specific features of the problem. Instead, it has a randomization nature. Therefore, it is usually an iterative and nature-inspired technique.
Meta-heuristics used abstracted heuristics to explore the solution domain and get a better solution that aims to reach the global optimum. However, it is necessary to do some parameter tuning to adapt to the problem. Moreover, many researchers deal with meta-heuristics techniques in which they focus on single optimization problems as multioptimization problems; this results in poor performance. Thus, a robust meta-heuristic algorithm with hybridization is essential to address multiple problems simultaneously [10].
Hyper-heuristics with artificial intelligence, machine learning, and deep learning incorporated nature seek to automate finding a heuristic way to solve a problem. Hence, their search space is not the usual space of solutions but the space of heuristics; they are presented in the literature as ''heuristics to find/generate heuristics.'' They are also non-problem specific where the decision for a heuristic selection is based on problem-independent measures. Such as the change in the quality of a solution when the selected heuristic is used. Once implemented, they can be directly applied to other problems. Hyper-heuristics are considered a substitute for the meta-heuristics developed for a specific problem and require fine-tuning related parameters [77]. Compared to a methodology that operates directly on the solution space, the evolutionary heuristic generation process is often computationally expensive, especially if it is not used on other problems.
To sum up, Table 2 distinguishes the three types of heuristics to comprehend the distinctions and assist in selecting a suitable heuristic method for a given problem.

B. HEURISTICS FOR CROWD MANAGEMENT
Heuristics have multiple roles in crowd management, as we could find in the previous sections. This section will concentrate on the applications of heuristics in crowd management. Crowd management includes crowd recognition, tracking, simulation, and prediction [68]. From a heuristic perspective, tracking is a kind of recognition and prediction results from simulation. Consequently, the applications of heuristics in crowd management fields are in recognition and simulation. Notably, the literature is more driven to crowd modeling, especially agent-based models where agents make a decision that represents a realistic behavior.
The first aspect is the recognition which involves detecting, tracking, and analyzing the crowd. This recognition is also used to detect any abnormal behavior of the crowd, which extends crowd recognition to crowd management. It will also help to develop a crowd risk index (CRI) and decision support systems (DSS) for crowd management [68]. The issue of selecting the optimal method and architecture for crowd detection belongs to the polymerization problem, which may refer to the simplest, the fastest, the most accurate, or the most efficient at producing accuracy while minimizing computational complexity. For example, the most efficient convolutional neural network CNN architectures [78] are used as methods to classify abnormal behavior of the crowd [79]. Using a simple 2D CNN structure to train the network with three layers and two classes, normal or abnormal behavior, the primary goal is to improve the accuracy of the original CNN by applying a simulated annealing algorithm. Where SA is a technique of random search for the global optimization problem. It imitates the process of annealing in material processing. The standard procedure in simulated annealing for optimization problems is to generate the solution vector (randomly selected), calculate the fitness function, and initialize the temperature value. Next, randomly select a new solution to evaluate the solution depending on the fitness function, decrease the temperature, then stop or repeat. However, the SA algorithm is used to find the condition of best accuracy and minimize estimated error and indicator of network complexity [78]. The CNN takes the still frames of crowd video scenes as an input where there are convolutional and subsampling layers. The last layer calculates the loss function using the computation of the values and weights as solution vector (x) optimized by the SA algorithm by adding x randomly. The experiment results showed that the new method, named CNN-SA, presents the best accuracy for all epochs compared to other models and the original CNN model. In the crowd detection case, it is possible to validate the performance of this method on different benchmark datasets; AGORASET is one example of the recommended virtual datasets for crowd video analysis [80], [81].
The second aspect is the application of heuristics in crowd simulation and prediction. The searching nature of heuristic and its applications in AI and MAS makes it the best solution for simulating crowd movement, whether on a microscopic or macroscopic level. The simulation agent A uses the heuristic method H to evaluate the recognized input X A,t of sensing the surrounding environment, including the fixed and moving object at time T and its previous belief in memory M A,t to decide its following action F A,t+1 .
The belief M A,t consists of the start belief M A,0 , and recursive recognition of the surrounding environment while processing the previous actions. M A,0 includes the conditions of the heuristic function and the offline inputs. This means we can find F A,t+1 using a derived non-recursive heuristic function H' that can deal with M A,0 and X A,T . This macroscopic model of simulation paved the way to linear macroscopic model for crowd prediction based on solving the heuristic recursion function in terms of time instance t i ∈ T.
In the case of microscopic simulation, we have multiple simulation agents a i ∈ A refers to the moving objects. In this case, the actions F a i ,t+1 are calculated separately and affect the inputs of other agents. It makes the complexity of the recursion grows exponentially in terms of time, reaching the worst level, BigO ∈ n n ⇔ t+1. However, the online application of the heuristic method is still running on linear bases BigO ∈ n ⇔ t, which makes such simulation possible. Solving the recursion, in this case, is harder than in the macroscopic model. However, in an abstracted and isolated environment, the input X is nothing but the offline environment set in addition to the agents' interactions. In other words, the input X may be replaced by an agent that has its own belief and is affected by the interaction of the other agents. Such as in the following equations.
proving that it is mathematically possible to develop a linear prediction model using a non-recursive derivation of the heuristic recursion function in an isolated abstract environment. Still, applying this proof to actual crowd management techniques is expensive in terms of time and equipment and not yet applied. Alternatively, meta-heuristic neural networks are trained using crowd detection techniques, and then used to predict crowd movement. This fact reveals how the meta-heuristic approach applied in deep neural networks could efficiently bypass the limitations and where the trained weights w i ∈ W would eventually match the parameters of the offline belief M and the suitable interactions over time T.

V. CONCLUSION
This paper reviewed as many heuristics-related articles as possible to clear any fuzziness around the topic, gather the whole story behind its existence, present the latest advances and touch on its relation to crowd studies. It covers previous work similar to this paper, such as review papers and surveys. It also covers the state-of-the-art heuristics approaches to real-world problems. These techniques fall under this classification: simple heuristics, meta-heuristics, and hyperheuristics. The paper also explores the origins and the reasons for using heuristics approaches, which come from the following: (I) the classic methods used in problem-solving sometimes are too slow to find a solution that calls for practical and less complicated ones. (II) sometimes, problems have to be built on estimated data or based on inaccurate data that require a flexible approach to tackle such an ill-defined problem. Firstly, the paper browses the academic history of the topic and the methodologies under the same classification. Then, it directs the focus on the current role of heuristics in crowd studies. It distinguishes the difference between heuristics types. While the simple heuristics are problem dependent, the other two types are problem independent, and they do not require any problem-specific data, hence, applied to different problems. Most importantly, the heuristics and meta-heuristics techniques search the solution space while the hyper-heuristics techniques search the heuristics space. The most perused algorithms for real-world problems in heuristics literature are the greedy neighborhood search algorithms, genetic search algorithms, and evolutionary search algorithms.
Finally, the paper previews the heuristic presence in crowd field problems and concludes that heuristics, in general, are helpful in various crowd management applications. For example, it can be utilized to build effective models or automate the process by relying on data to develop crowd risk indicators (CRI) or decision support systems (DSS). While CRI can monitor, detect, and predict hazardous crises, DSS is set to help the decision process in real-life situations and simulations.
In crowd modeling, simple heuristics can be applied by relying on simple rules and functions for an agent to choose the following action in a simulation. On the other hand, metaheuristics are more generic and applicable to adapt any problem with ambiguous features to generate more realistic and sophisticated crowd dynamics. Furthermore, hyper Heuristics can be involved in crowd simulation to automate and generate more realistic behavior by constructing a high-level heuristic out of a data-driven low-level heuristic.
Heuristics are highly effective and can enhance the performance of crowd applications, which makes them helpful in automating applications and finding data-based solutions instead of designing a new model.
The authors encourage the other researchers to specify the use of this approach in crowd literature clearly and employ heuristics techniques in this field for further purposes, such as enhancing accuracy or minimizing the computation complexity cost.