Predict user departure time from parking lot with user behavior learning \ Filtering unnecessary data

First, I say I have no choice but to explain the whole process in favor of the question that will be asked at the end of the explanation. I'm sorry for the large amount of words that came out. your help is important to us further down the road so please, take a few minutes to help us with this challenge.

Our company is engaged in manufacturing and developing automated parking site solutions in the US.
The general idea of the product is to bring the vehicle by the customer to the entrance platform and from that point forward everything is done automatically: inserting the vehicle into the car park, finding an ideal parking space and parking the vehicle at a location determined by shuttles and dedicated lifts.

Many of our parking lots contain double and more parking spaces. What is double parking? Parking space where two or more vehicles can be parked, means that one vehicle necessarily blocks the vehicle behind it (in case there are 2 vehicles in the parking lot).
In such cases, when the user orders the vehicle back for exit and there is a vehicle that blocks it in double parking, what we call "blocker evacuation" is performed.
"Blocking evacuation" means the allocation of parking resources (shuttles, conveyors, pallets, etc.) for the evacuation of the front vehicle and only afterwards did the requested vehicle head towards the exit platform. Such an action takes valuable time (minutes), prolongs the user's waiting period until their vehicle is received and, of course, compromises product quality and service.
Therefore, we try to perform a number of actions to optimize the system and improve its performance. For example: An algorithm that we have built finds the ideal parking space for the customer (the shortest exit time given the existing situation) and places the vehicle at that point.

At the same time (and for that I am writing the question), we are trying to develop an algorithm that will study the user's behavior over a certain period of time and his parking habits so that we can predict his next departure time. Why is it good? In the case of a "blocker evacuation" (as we explained earlier), the system will be able to do double parking evacuation even before the user requests the vehicle (since we estimate when the customer is leaving), thus saving valuable time from the customer.
For the benefit of this algorithm, we have started collecting all the necessary information: seniority in the system, hours of entry and exit, length of stay in the parking lot, average use of the times a day in the parking lot, average time of arrival and departure and so on.
We are currently focusing on user exit data.

We consolidate its departure points into 30 minute intervals that are grouped by days per week. Please see the attached image, I intend to explain it now:
In this graph we see some data:
1. The red dots - represent the number of times the user exited the car park at 30 minute intervals throughout the period. For example: After taking all of his data from the different Mondays and grouping them into groups of 30-minute intervals, we see that at 2:49 pm, he exited 30 times (14:49 is the average of all 30 exits ranging from 14:30-15:00)
2. The top purple line - marks the user's highest point of activity over the period
3. The green dots - the same as the red dots only at the entrance and not at the exit (irrelevant for the benefit of this discussion).
4. Orange Background - This is where the magic actually happens: depending on the average number of times the user leaves on the same day, we find the number of relevant bells (we call the same orange background "bell"), in our case - 2 ports. How It Works?
We start from the highest point and look for neighbors on the left and on the right. Each neighbor point is checked in the value against the value in the lower red line (which we will expand upon immediately and for which we converged). If the value at that point is greater than the red line - it goes into the calculation. If the value is less than the red line - the 'neighbors check' action in the current direction stops (note that the orange color is above the red background - please ignore this, UI problems :)).
In this way we map all the relevant area and know where to find a area from which we will predict the next estimated time the user leave.

Now, after all this speech, I turn to the question for which we convened:
We need to find the value of the red line.
At present it is at 5% of the total activity (aggregation of all white numbers in the graph) arbitrarily and for no particular reason. The question being asked is how do we know where to place the bottom red line, an action that will determine the benefit of finding the orange areas, the user's high activity areas.
I emphasize the importance of the red line: its purpose is to filter out non-relevant user activities for the sake of calculation and to identify the points that represent high activity.
Thanks so much for taking the time to read this.
Your help is very important to us and will greatly advance us on this subject, I appreciate it a lot.