Имитационное моделирование поведения толпы

Следует отметить, что с использованием технологии Adobe Flash CS и объектно-ориентированного языка программирования Action Script 3.0 (рис. 12.5) был разработан программный симулятор, позволяющий моделировать поведение толпы, варьируя различными параметрами системы (такими как количество агентов, наличие и местоположение столбов-препятствий, радиусы столбов, вероятность притяжения агента к толпе, количество спасателей, размеры выходов и др.).

Система разработки Adobe Flash CS

Рис. 12.5. Система разработки Adobe Flash CS

Ниже представлен фрагмент программы Action Script 3.0, разработанной для реализации имитационной модели поведения толпы в условиях экстремальных ситуаций:

//Определение характеристик модели import fl.controls.Slider; import fl.events. SliderEvent; import flash.display.Shape; var newPers:Array = []; //Агенты

var newPersl:Array = new Array(); //Состояние агентов

var newSauv:Array = new Array(); //Спасатели

var newCl :Array = new Array();; //Препятствия (столбы)

var target_x:Array = new Array(); //Координата X для спасателей

var target_y:Array = new ArrayQ; //Координата Y для спасателей

var flag2:Array = new Array();

var dens:Array = new Array(); //Плотность толпы в секторах

var sector:Array = new Array(); //Индексы секторов

var newMoon:Shape = new Shape(); //Взрыв — эпицентр

var newMoon2:Shape = new Shape(); //Взрыв — вторая зона поражения

var Radiusl:Number; //Радиус взрыва

var AG:Number=0; //Количество агентов

var AGs_new:Number=0; //Количество новых спасателей

var AGs:Number=0; //Количество спасателей

var Posts:Number = 1; // Количество препятствий

var counterl:Number = 0; //Признак t=0

var AGl_r_sum:Number=0;

var cl:Number=0; //Сила отскока (вычисляемый параметр) var speed:Number=l/2; //Скорость распространения дыма (время на эвакуацию)

var speed_s:Number=l;

var speedl:Number=l; //Скорость движения раненых var specd2:Number=2; //Скорость движения нс раненых var speed3:Number = 4; //Скорость движения спасателей var p_l:Numbcr = 0.9; //Вероятность притяжения «толпой» var d 1, d2: Number; //Координаты дверей //Динамическое создание агентов (значение параметра AG) function sliderChange (event: SliderEvent) zapusk=l; zz - 0;

newMoon2.graphics.clear();

removeChild(this.newMoon2);

for(var i:Nurnber = 0; i < AG; i++)

{

removeChild(newPers[i]); delete newPers[i]; delete newPersl[i]; delete bcta2[i];

>

AG = Number(agentsc.value);

AGcount.text = String(AG);

for(var i:Number = 0; i < AG; i++)

{

newPers[i| =new MyPcrs(); // Реплицированные агенты.

newPersl[i]=0;

addChild(newPers[i]);

newPers[i].x = 200 + 640* Math.random();

newPersfij.y = 250 + 400*Math.random();

beta2[i]=0;

//Пространственная динамика агентов function enterFrame(event:Event):void {

//Работа спасателей var j:Number = 0;

for(var i:Number = 0; i < AGs; i++)

{

if(flag2[i] = 0){

angle_s=Math.atan2(target_x[sector[j ] ]-newSauv[i].x, target_y[sector[j 11- newSauv[i].v);

newSauv[i].x +=speed3*Math.sin(angle_s);

newSauvjij.y += spccd3*Math.cos(angle_s);

}

На рис. 12.6 представлены результаты моделирования при отсутствии столбов. Отметим, что погибшие агенты выделены черным цветом.

Результаты моделирования при отсутствии столбов- препятствий (погибшие агенты выделены черным цветом)

Рис. 12.6. Результаты моделирования при отсутствии столбов- препятствий (погибшие агенты выделены черным цветом)

В результате проведенных исследований выяснилось, что при отсутствии чрезвычайных ситуаций, но высокой плотности толпы, т.е. когда количество агентов в замкнутом пространстве, одновременно стремящихся к выходам, достаточно велико (в частности, 300 и более агентов на площади примерно в 100—150 м2), а пропускная способность выходов относительно мала (не более двух человек за один проход), то 43—44% агентов погибают в результате давки и «турбулентности» толпы (см. рис. 12.6).

Однако можно использовать столбы-препятствия, расставленные определенным образом в замкнутом пространстве, в частности размещенные вдоль стен с последующим сужением к выходам. Это позволяет минимизировать влияние эффектов турбулентности толпы и давки за счет принудительного рассечения людских потоков и уменьшить количество погибших примерно в 4 раза (рис. 12.7).

Основные результаты имитационного моделирования

• Когда количество агентов в замкнутом пространстве, одновременно стремящихся к выходам, достаточно велико (в частности, 300 и более агентов на условной площади 100—150 м2), а пропускная способность выходов относительно мала, то примерно 40—44% агентов погибают в результате эффекта давки и турбулентности толпы.

Результаты моделирования при наличии столбов- препятствий, обеспечивающих рассечение толпы

Рис. 12.7. Результаты моделирования при наличии столбов- препятствий, обеспечивающих рассечение толпы

  • • При отсутствии чрезвычайных ситуаций (когда время на эвакуацию людей из здания не является критичным) использование правильно размещенных столбов в замкнутом пространстве позволяет минимизировать влияние эффектов турбулентности толпы и давки и уменьшить количество погибших примерно в 4 раза.
  • • При наличии чрезвычайных ситуаций, когда время на эвакуацию людей из здания является критичным фактором, необходимо использовать интеллектуальных агентов-спасателей. Интеллектуальные агенты-спасатели обладают способностью идентифицировать координаты центров секторов высокой плотности толпы, ранжировать их по значению плотности и выбирать приоритетные сектора в каждой спасательной итерации, адаптируясь к динамике толпы с учетом результативности предыдущих спасательных итераций. При этом использование интеллектуальных агентов-спасателей также позволяет примерно в 4 раза уменьшить количество погибших агентов при ограниченном времени на эвакуацию.
  • • Оптимальным соотношением числа агентов-спасателей к общему количеству остальных агентов является 1 к 10 (0,1). При большем количестве агентов-спасателей их эффективность снижается, так как в этом случае наблюдается частое пересечение их траектории и, как следствие, отвлечение внимания эвакуируемых агентов, приводящее к хаотическому движению.
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >