Задания. Департамент образования, науки и молодежной политики Воронежской области Государственное бюджетное профессиональное образовательное учреждение Воронежской области Лискинский промышленнотранспортный техникум имени А. К. Лысенко
Скачать 7.79 Mb.
|
Моделирование многоканальной смо с очередью.Усложним модель, добавив в нее банковских кассиров. Можно моделировать число кассиров, как и банкомат, с помощью объектов delay. Но куда более удобным представляется моделирование числа кассиров с помощью ресурсов.Ресурс – это специальный объект Enterprise Library, который может потребоваться заявке для выполнения какой-то задачи. В нашем примере посетителям банковского отделения (заявкам) необходимо получить помощь у банковских служащих (ресурсов). Добавьте на диаграмму следующие объекты: selectOutput – является блоком принятия решения. В зависимости от заданного вами условия, заявка, поступившая в этот объект, будет поступать на один из двух выходов объекта. Оставьте свойствоselectCondition – uniform() < 0.5, тогда к кассирам и банкомату будет приходить примерно равное количество клиентов; Service – моделирует занятие заявкой ресурса на определенное время. С помощью этого объекта мы промоделируем обслуживание клиента кассиром. Задайте следующие свойства объекта: назовите объектtellerLines (свойство Имя); укажите, что в очереди к кассирам может находиться до 20 человек (свойство queueCapacity); задайте время обслуживания (свойство delayTime). Будем полагать, что время обслуживания имеет треугольное распределение с минимальным средним значением 2.5, средним – 6 и максимальным – 11 минут; Рис. 3.23. Задание свойств линии касс. ResourcePool – задает ресурсы определенного типа. Он должен быть подсоединен к объектам, моделирующим занятие и освобождение ресурсов (в нашем случае это объект Service). Задайте следующие свойства объекта: назовите объект tellers; задайте число кассиров (свойство capacity) – 4. Измените имя объекта delay на ATM (банкомат). Соедините объекты соответствующим образом (рис. 3.24). Рис. 3.24. Вид двухканальной СМО. Запустите модель и изучите ее поведение. Сбор статистики о времени обслуживания клиента. Необходимо определить, сколько времени клиент проводит в банковском отделении и сколько времени он теряет, ожидая своей очереди. Соберем эту статистику с помощью специальных объектов сбора данных и отобразим собранную статистику распределения времени обслуживания клиентов с помощью гистограмм. Создадим класс сообщения Customer. Сообщения этого класса будут представлять клиентов банковского отделения. Выберите базовый класс Entity(сообщения), добавьте параметры для хранения информации о проведенном времени: в панели Проект, щелкните правой кнопкой мыши по элементу модели и выберите Создать | Java класс из контекстного меню (рис. 3.25); Рис. 3.25 Добавление Java- класса. появится диалоговое окно Новый Java класс. В поле Имя введите имя нового класса Customer; сделайте так, чтобы этот класс наследовался от базового класса заявкиEntity (рис. 3.26): выберите из выпадающего списка Базовый класс полное имя данного класса: com.xj.anylogic.libraries.enterprise.Entity; Рис. 3.26 Задание свойств Java- класса. щелкните мышью по кнопке Далее. На второй странице Мастера вы можете задать параметры создаваемого Java-класса. Создайте параметры: enteredSystem типа double для сохранения момента времени, когда клиент пришел в банковское отделение; startWaiting типа double для сохранения момента времени, когда клиент встал в очередь к банкомату; щелкните мышью по кнопке Готово. Вы увидите редактор кода созданного класса. Можете закрыть его, щелкнув мышью по крестику в закладке с его названием. Теперь вычислим время, которое тратится персоналом банка наобслуживание клиентов, и время, которое клиенты тратят на ожиданиесвоей очереди. Для этого добавьте элементы сбора статистики по времени ожидания клиентов и времени пребывания клиентов в системе. Эти элементы будут запоминать соответствующие значения времени для каждого клиента и предоставят пользователю стандартную статистическую информацию: среднее, минимальное, максимальное из измеренных значений, среднеквадратичное отклонение, доверительный интервал для среднего и т.п.: чтобы добавить объект сбора данных гистограммы на диаграмму, перетащите элемент Данные гистограммы с палитры Статистика на диаграмму активного класса; задайте свойства элемента (рис. 3.27). Измените Имя на waitTimeDistr. Измените Заголовок на Waiting time distribution. Сделайте Кол-во интервалов равным 50. Задайте Начальный размер интервала: 0.01; Рис. 3.27 Задание свойств гистограммы. создайте еще один элемент сбора данных гистограммы (Ctrl + перетащите только что созданный объект данных гистограммы, чтобы создать его копию). Измените Имя этого элемента на timeInSystemDistr, а Заголовок наTime in system distribution. Измените свойства блоков вашей диаграммы процесса. Задайте следующие свойства объектов диаграммы: блок source, свойство Новая заявка – введите new Customer(). Введите Customer в поле Класс заявки. Это позволит напрямую обращаться к полям класса заявки Customer в коде динамических параметров этого объекта. Введите entity.enteredSystem = time(); в поле Действие привыходе. Этот код будет сохранять время создания заявки-клиента в переменной enteredSystem нашего класса заявки Customer. Функция time() возвращает текущее значение модельного времени; блок tellerLines (блок Service) – введите Customer в поле Класс заявки. Добавьте код в поля: Действие при входе: entity.startWaiting = time(); Действие при выходе: waitTimeDistr.add(time() - entity.startWaiting); блок queue– введите Customer в поле Класс заявки. Добавьте код в поля:Действие при входе: entity.startWaiting = time(); Действие при выходе: waitTimeDistr.add(time()-entity.startWaiting) Данный код добавляет время, в течение которого клиент ожидал обслуживания в объект сбора данных waitTimeDistr; блок ATM (блок delay) – введите Customer в поле Класс заявки; блок sink – введите Customer в поле Класс заявки. Напишите следующий код, чтобы сохранить в наборах данных данные о клиенте, покидающем банковское отделение (Действие при входе): timeInSystemDistr.add(time()-entity.enteredSystem); Данный код добавляет полное время пребывания клиента в банковском отделении в объект сбора данных гистограммы timeInSystemDistr. Добавьте две гистограммы для отображения распределений времен ожидания клиента и пребывания клиента в системе. Чтобы добавить гистограмму на диаграмму класса активного объекта, перетащите элемент Гистограмма из палитры Статистика в то место, куда вы хотите ее поместить. Укажите, какой элемент сбора данных хранит данные, которые хотите отображать на гистограмме: щелкните мышью по кнопкеДобавить данные и введите в поле Данные имя соответствующего элемента –waitTimeDistr. Аналогичным образом добавьте еще одну гистограмму и расположите ее под ранее добавленной. В поле Данные введите timeInSystemDistr. Измените заголовки отображаемых данных. Запустите модель. Включите режим виртуального времени и посмотрите, какой вид примет распределение времени ожидания и времени пребывания клиента в системе. Индивидуальные варианты заданий. Внесите изменения в модель банковского отделения согласно варианту (параметры законов распределения задайте произвольно).
Проанализируйте поведение модели. Постройте графики и диаграммы. Текущий контроль по МДК.06.01 Внедрение информационных систем Контрольная работа: Текущий контроль по МДК. 06.02 Инженерно-техническая поддержка сопровождения информационных систем Контрольная работа: 1. Базы данных — это: A) информационные структуры, хранящиеся во внешней памяти; B) программные средства, позволяющие организовывать информацию в виде таблиц; C) программные средства, обрабатывающие табличные данные; D) программные средства, осуществляющие поиск информации. 2. В коробке меньше 9, но больше 3 шаров. Сколько шаров может быть в коробке? А) 3; В) 9; С) 2; D) 5; Е) 10. 3. Какие атрибуты (признаки) объекта должны быть отражены в информационной модели, описывающей хобби ваших одноклассников, если эта модель позволяет получить ответы на следующие вопросы: - Каков возраст всех детей, увлекающихся компьютером? - Каковы имена девочек, увлекающихся пением? - Каковы фамилии мальчиков, увлекающихся хоккеем? A) имя, пол, хобби; B) фамилия, пол, хоккей, пение, возраст; C) имя, пол, хобби, возраст; D) имя, возраст, хобби; E) фамилия, имя, пол, возраст, хобби? 4. Реляционная база данных задана таблицей:
Какие записи будут выбраны по условию: Спорт= "лыжи" И Пол= "жен" ИЛИ Возраст A) 2, 3, 4, 5, 6; B) 3, 5, 6; C) 1, 3, 5, 6; D) 2, 3, 5, 6; Е) таких записей нет. |