Release of AGV DZ

Hello! Hello everyone
Recently, I've encountered a difficult problem and I'm seeking help from the community.

Objectives:
Expectation 1: When two AGVs head towards the same AGV DZ, they will wait on the branch road until reaching the AGV DZ;
Expectation 2: Two AGVs will not meet simultaneously on the "Part1&Part2" branch road;
Expectation 3: When two AGVs head towards different AGV DZs, they will not wait on the branch road until reaching the AGV DZ, but will head to the other AGV DZ.

 

Operations:
When one AGV is on the main road (passing through C),another AGV on the branch road wait at A (A1\\A2\\A3\\A4). This is achieved by setting "management AGV blocking & release", which fulfills expectation 1;

Since there will be a situation where two AGVs simultaneously head towards "Part1&Part2", to avoid this, when one AGV reaches C3\\C4 from C1\\C2, it does not release the A point, but releases the A point after the AGV from C3\\C4 reaches C1\\C2. This fulfills expectation 2.

However, this will cause a situation where, due to one AGV on the "Part1&Part2" branch road, the other AGV from C3\\C4 to C1\\C2 will wait at A1\\A2. Therefore, the instruction to release A1\\A2 when the AGV from C1→B1 or C2→B2 is set, but A1\\A2 is not released, so expectation 3 is not fulfilled.

This is the original document. Thank you for your help in advance.