Ознакомительная версия. Доступно 19 страниц из 92
точных конкретных значений есть свои преимущества. Скажем, при применении диапазонов и вероятностей нет нужды делать предположения, в которых вы не уверены. Однако плюс точных значений в том, что их легко складывать, вычитать, умножать и делить в электронной таблице. Если точно знать величину убытков каждого типа, можно без труда вычислить общие убытки. А поскольку для каждого типа у нас есть только диапазоны, то для вычислений придется использовать методы вероятностного моделирования.
Так каким же образом выполнять математические действия в электронной таблице, когда у нас не точные значения, а диапазоны? К счастью, есть проверенное практическое решение, которое можно применить на любом современном компьютере, – метод Монте-Карло. В симуляции по методу Монте-Карло с помощью компьютера генерируется множество сценариев, в качестве вводных данных для которых используются вероятности. В каждом сценарии для каждой из неизвестных переменных случайным образом задается конкретное значение. Затем эти значения подставляются в формулу для расчета выходных данных одного сценария. Процесс обычно охватывает тысячи сценариев.
В 1940-х годах ряд математиков и ученых начали использовать подобные симуляции тысяч случайных испытаний для некоторых очень трудных математических задач. Станислав Улам, Джон фон Нейман и Николас Метрополис сумели применить данный метод на примитивных компьютерах, доступных в то время, чтобы помочь решить математические задачи, связанные с разработкой первой атомной бомбы. Ими было обнаружено, что при проведении тысяч испытаний в произвольном порядке можно вычислить вероятность различных результатов для модели, имеющей некоторое количество входных данных, характеризующихся высокой степенью неопределенности. По предложению Метрополиса Улам назвал этот компьютерный метод генерации случайных сценариев методом Монте-Карло – по известному месту для любителей азартных игр, в честь своего дяди, заядлого игрока1. В настоящем, когда имеется большая вычислительная мощность (в миллиарды раз превышающая практически по всем показателям ту, что была доступна в Манхэттенском проекте), симуляции по методу Монте-Карло используются для моделирования проектных и финансовых рисков, для создания моделей риска на электростанциях, в системе поставок, в страховании и, да, в кибербезопасности.
Если у вас нет опыта работы с симуляциями по методу Монте-Карло, скорее всего, они кажутся вам сложнее, чем есть на самом деле. Они регулярно применяются авторами и многими их сотрудниками для решения различных практических задач в бизнесе. Нам не единожды приходилось видеть, как люди, у которых сама идея использования симуляций по методу Монте-Карло вызывала дискомфорт, после непосредственной работы с ними становились в итоге их ярыми сторонниками.
Давайте начнем с очень простой задачи и разберем инструменты для ее решения. Предположим, есть набор возможных событий, которые могут случиться за год. Для каждого события заданы степень вероятности и диапазон возможных убытков, в случае если оно произойдет. Пусть вероятность одних событий составляет 1 %, а других – более 10 %. В конкретном году может не произойти события, которое приведет к значительным убыткам, или их окажется несколько, возможно даже, что одно и то же событие случится несколько раз в течение года. Для последнего варианта также есть решение, но сейчас мы будем придерживаться простого сценария и моделировать событие как результат «или-или», происходящий не чаще одного раза в год. Матрица рисков, в любом случае, не учитывает подобный вариант (как и некоторые другие аспекты, о которых поговорим позже), так что простой сценарий делает пример ближе к принципу замены «один на один».
Далее в книге будет возможность подробнее остановиться на этом виде моделирования. Однако, чтобы помочь вам начать работу, мы предоставили несколько простых примеров в электронной таблице Excel, которую можно загрузить с сайта www.howtomeasureanything.com/cybersecurity. Вооружившись информацией из таблицы и более подробными материалами из следующих глав, вы сможете моделировать свою неопределенность и отвечать на вопросы вроде «Какова вероятность того, что в следующем году из-за кибератаки убытки составят больше, чем X?».
Для решения нашей задачи мы смоделируем тысячи сценариев для каждого риска. В каждом сценарии нужно лишь определить по каждому виду риска, произойдет ли событие и, если произойдет, каковы будут его последствия.
Введение в генерацию случайных событий и воздействий в Excel
Начнем с определения того, произошло ли событие в отношении одного риска в одном сценарии. Для этого при моделировании можно случайным образом генерировать «1», если событие произойдет, и «0», если не произойдет, где вероятность получения «1» равна заявленной вероятности события. В редакторе Excel это можно записать следующим образом:
=ЕСЛИ(СЛЧИС() < вероятность_события;1;0)
Например, если вероятность события равна 0,15, то эта формула будет выдавать результат «1» (означающий, что событие произошло) в 15 % случаев. В Excel при каждом новом вычислении (по нажатию клавиши F9) будет получаться новый результат. Повторив операцию тысячу раз, вы увидите, что событие произойдет примерно 150 раз. Обратите внимание, что так будет для каждого отдельного риска, указанного в симуляции. То есть, если у вас 100 рисков, у каждого из которых различная вероятность, и вы запустите 1000 сценариев, то эта маленькая формула будет рассчитана 100 000 раз.
Для определения воздействия необходимо генерировать не просто «0» или «1», а континуум значений. Это можно сделать с помощью одной из обратных функций вероятности редактора Excel. Некоторые функции вероятности в Excel позволяют определить вероятность конкретного результата при определенном распределении вероятности. Например, НОРМРАСП(x;среднее; стандартное_откл;1) покажет вероятность того, что нормальное распределение с заданными средним значением и стандартным отклонением даст значение, равное x или меньше. Обратная же функция вероятности выдаст значение x с учетом вероятности.
В Excel обратная функция вероятности для нормального распределения выглядит так:
=НОРМОБР(вероятность; среднее; стандартное_откл)
(Примечание: в последних версиях Excel также используется функция НОРМ.ОБР, но НОРМОБР тоже работает.) Если заменить аргумент «вероятность» на функцию СЛЧИС(), то получится нормально распределенное случайное число с указанным средним значением и стандартным отклонением. Стандартное отклонение – своего рода мера ширины распределения вероятности, но на самом деле эту величину специалистам очень трудно определить интуитивно. Лучше просто попросить эксперта назвать 90 %-ный доверительный интервал, как описывалось ранее. ДИ можно использовать для вычисления необходимых параметров среднего значения и стандартного отклонения на основе верхнего и нижнего пределов (ВП и НП) диапазона потенциальных убытков, предоставленного экспертом.
Ознакомительная версия. Доступно 19 страниц из 92