Моделирование системы равновероятностных событий с использованием мультиагентной платформы JADE
Моделирование различных систем событий. Особенности мультиагентной платформы JADE. Использование агентов, нарушающих принятый порядок работы системы. Реализация программы на языке Java. Вычислительная модель агента. Моделирование игры в "наперстки".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 30.01.2016 |
Размер файла | 423,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное заведение
высшего профессионального образования
Белгородский Государственный Технологический Университет им В.Г. Шухова
Кафедра программного обеспечения вычислительной техники и автоматизированных систем
КУРСОВАЯ РАБОТА
по дисциплине «Технология построения защищенных автоматизированных систем»
на тему: «Моделирование системы равновероятностных событий с использованием мультиагентной платформы JADE»
Выполнили:
студенты группы
КБ-51
Григорьев А.С.
Панкратов А.В.
Проверил:
Поляков В.М.
Белгород
2015г.
Содержание
Содержание
Аннотация.
Постановка задачи.
1. Теоретические сведения.
1.1 Агентно ориентированный подход.
1.2 Мультиагентная платформа JADE.
2. Практическая часть.
2.1 Описание работы системы.
2.1.1 Master.
2.1.2 Player.
2.1.3 Apprentice.
2.2 Демонстрация работы.
Вывод.
Список литературы.
Приложение.
Листинг программы агента «Master».
Листинг программы агента «Player».
Листинг программы агента «Apprentice».
Аннотация
В данной курсовой работе изучается мультиагентная платформа JADE, применение её для моделирования различных систем, а также разрабатывается приложение, моделирующее систему равновероятностных событий, частным случаем которой является игра в «наперстки», для демонстрации возможностей данной платформы. Приложение было разработано совместно Григорьевым А.С. и Панкратовым А.В.
Постановка задачи
В ходе выполнения курсовой работы необходимо:
1. Изучить мультиагентную платформу JADE.
2. Разработать приложение, моделирующее систему равновероятностных событий, с использованием мультиагентной платформы JADE.
3. В приложение необходимо использовать агентов, нарушающих принятый порядок работы системы, тем самым показать уязвимости моделируемой системы.
4. Программу реализовать на языке Java.
1. Теоретические сведения
1.1. Агентно ориентированный подход
Агентно-ориентированный подход(АОП) -- разновидность представления программ, или парадигма программирования, в которой основными концепциями являются понятия агента и поведения. Агент в данном случае понимается как некая программная сущность, которая обладает собственным поведением. Агент представляет собой более сложную, активную и автономную единицу чем объект.
В ООП вычислительный процесс понимается как система, собранная из модулей, которые взаимодействуют друг с другом и имеют собственные способы обработки данных. В свою очередь, АОП уточняет эти рамки, фиксируя активность агентов и изменения их состояний через анализ убеждений, обязательств, намерений и пр. Наличие у агента механизма целеобразования обеспечивает принципиально новый уровень автономии. Агент необязательно выполняет распоряжения какого-либо другого агента или пользователя, а просто зависит от условий среды, включая цели и намерения других агентов. В отличие от объекта, агент может принять на себя определенные обязательства или, наоборот, отказаться от выполнения некоторой работы, мотивируя это отсутствием компетентности, занятостью другой задачей и т. п. В то же время, агент может выполнять такие действия как порождение, подавление и замена других агентов, активизация функций (как своих, так и у других агентов), активизация сценария деятельности, запоминание текущего состояния других агентов и пр. Все это наглядно показывает, что агент, будучи «активным объектом» или «искусственным деятелем», формирующим свое собственное поведение, находится на более высоком уровне сложности по отношению к традиционным объектам в ООП.
Основными свойствами агентов считаются:
Автономность -- способность выполнять действия самостоятельно.
Гомогенность/гетерогенность -- способность объединять однородные или разнородные функции
Способность к обучению, и «интеллект» -- машинное обучение коррекция поведения для улучшения собственной эффективности
Активное поведение, постоянный обмен информацией «внутри» агента и между агентом и средой
Коммуникативность -- обмен данными
Восприятие среды -- наличие специальных «средств» восприятия среды функционирования агента
Мобильность -- перемещение агента внутри других программных и физических сред и / или компонентов
Примером АОП можно считать ботов, имитирующих действия игроков в играх, программы в чатах выполняющие роль “собеседника”. Однако некоторые боты выполняют не только роль имитаторов в процессе общения или игры, они используются для редактирования текстовой информации, для наладки сетевых соединений, модерирования ресурсов и т. п.
1.2 Мультиагентная платформа JADE
JADE это прослойка которая используется в разработке мультиагентных систем на языке Java. Она включает:
Среда выполнения в которой агенты могут “жить” и которая должна быть запущена на машине, прежде чем один или более агентов смогут быть запущены на этом узле.
Библиотека классов, которую программист получает, чтобы разрабатывать его агентов.
Набор графических инструментов, который позволяет управлять и наблюдать за деятельностью запущенных агентов.
Приложение, базирующееся на JADE, состоит из набора компонентов, называемых агентами, каждый из которых имеет уникальное имя.
Агент -- это программная сущность для выполнения поставленных задач. Обладает поведением, а именно: взаимодействует с внешней сложной и динамично-развивающейся средой, способной модифицироваться или быть модифицированной другими агентами в зависимости от конкретных условий.
Взаимодействие подразумевает:
восприятие динамики среды;
действия, изменяющие среду;
рассуждения в целях интерпретации наблюдаемых явлений, решения задач, вывода заключений и определения действий.
Вычислительная модель агента является многозадачной. В агенте отдельные задачи (или поведения) могут выполняться одновременно. Каждые функциональная возможность и/или сервис, предоставляемый агентом, должны быть реализованы как одно поведение или их набор. Внутренний планировщик, скрытый от разработчика, автоматически управляет планированием поведений.
Такой подход позволяет гибко конфигурировать политики выделения потоков агентам:
один поток на всех агентов;
жесткое выделение одного потока на агента;
фиксированный пул рабочих потоков, больший или меньший, чем количество агентов в системе.
По умолчанию в системе каждому агенту платформы соответствует один поток.
В зависимости от степени свободы среды, подразумевающей наличие в ней соответствующего типа агента, среды подразделяются на:
Замкнутые
Конечное детерминированное или вероятностное описание всей среды, которое известно агенту априори или путём исследования.
Открытые
Конечное детерминированное или вероятностное описание локальной области среды, в которой находится агент и которое известно ему априори или путём исследования.
Трансформируемые
Динамически-развивающиеся среды, развивающей структурой которых является агент.
Агент JADE может находиться в одном из состояний, согласно жизненному циклу агентной платформы:
AP_INITIATED - агент создан, но пока не зарегистрирован в AMS, поэтому он не имеет ни имени, ни адреса и не может обмениваться сообщениями с другими агентами.
AP_ACTIVE - агент зарегистрирован в AMS, имеет постоянное имя и адрес и может использовать все различные особенности JADE.
AP_SUSPENDED - агент в текущий момент времени остановлен. Его внутренний поток приостановлен и не выполняется никакого поведения агента. Все входящие сообщения буферизуются.
AP_WAITING - агент блокирован (в ожидании). Его внутренний поток бездействует, и он пробудится при выполнении некоторого условия (например, поступление сообщения).
AP_DELETED - агент явно мертв. Внутренний поток завершил его выполнение, и агент больше не зарегистрирован в AMS.
AP_TRANSIT - мобильный агент перемещается к новому местоположению. Система продолжает буферизовать сообщения, которые будут посланы ему, когда он прибудет в новое местоположение.
AP_COPY - создание копии агента.
AP_GONE - мобильный агент переместился к новому местоположению, и имеет устойчивое состояние.
Агент вместе со всеми своими структурами данных и поведениями может быть средствами платформы реализован в поток байтов и передан на другой контейнер, где он продолжит свою работу. Агенты выполняют задачи и взаимодействуют путем обмена сообщениями.
Каждая запущенная копия среды JADE называется контейнером, который может содержать несколько агентов. Множество работающих контейнеров называется платформой. Один специальный главный контейнер должен всегда быть запущен в платформе и все другие контейнеры регистрируются у него, как только они запускаются. Отсюда следует что первый контейнер при старте платформы должен быть главным, а все остальные должны быть “нормальными” контейнерами и должны “сказать” как найти (хост и порт) их главный контейнер.
“Главный контейнер” так же может содержать в себе агентов, но отличается от других контейнеров тем что:
Он должен быть первый запущенный контейнером, в котором регистрируются все остальные контейнеры во время запуска;
Он включает в себя два специальных агента:
AMS, который является авторитетным в платформе и единственным агентом способным управлять платформой, т.е. запускать/убивать агентов или закрывать саму платформу(обычные агенты могут попросить AMS сделать это);
DF, который предоставляет услуги справочника, в котором агенты могут публиковать свои сервисы или найти других агентов которые будут предоставлять им необходимые сервисы.
Если другой главный контейнер запускается где-то в сети это является другой платформой, для которой новые нормальные контейнеры имеют возможность присоединяться.
Взаимодействие агентов
Агенты могут взаимодействовать независимо от того живут ли они в одном и том же контейнере, в разных контейнерах (на том же самом или на разных узлах), принадлежат ли к одной платформе, или же в разных. Взаимодействие основано на асинхронной передаче сообщений.
Формат сообщения определяется языком ACL, определенный международной организацией FIPA, которая выпустила ряд технических спецификаций для совместимости агентных систем. ACL сообщение содержит ряд полей:
отправитель;
получатель;
коммуникативный акт, содержит намерения отправителя сообщения. Например, когда агент посылает сообщение INFORM, он хочет, чтобы получателю стало известно о каком-то факте (например, INFORM “сегодня идет дождь”). Когда агент передает сообщение REQUEST, он хочет, чтобы получатель выполнил какое-то действие. FIPA определяет 22 коммуникативных акта, каждый с четко определенной семантикой, что как утверждают может покрыть 95% всех возможных ситуаций. К счастью, в 99% случаях мы не должны заботится о формальной семантике, мы просто используем их для интуитивного смысла;
содержание - фактическая информация, передаваемое в сообщении (то что получатель должен осознавать в случае INFORM и действие, которое он должен выполнить в случае REQUEST).
2. Практическая часть
2.1 Описание работы системы
моделирование система jade java
В рамках данной курсовой работы было реализовано приложение для изучения и демонстрации работы мультиагентной платформы JADE. Данное приложение моделирует игру в «наперстки». На рис.1 представлена схема взаимодействия агентов в приложении.
Рис.1. Схема взаимодействия агентов в приложении.
Приложение состоит из следующих типов агентов:
2.1.1 Master
Агент данного типа является ведущим в данной игре. Он имеет набор поведений, характерный для ведущего, что позволяет ему реагировать на различные виды событий, происходящие при взаимодействии с агентами других типов. Кроме того, он может общаться со всеми другими типами агентов.
2.1.2 Player
Агент данного типа является игроком в данной игре. Его набор поведений позволяет ему общаться только с агентом типа «Master» и реагировать на события, происходящие при их взаимодействии. Вероятность его выигрыша равна 33%.
2.1.3 Apprentice
Агент данного типа является подставным игроком в данной игре, то есть ведущий спрашивает у него: «В каком стаканчике шарик?» - с определенной интонацией. Для большей реалистичности модели данный агент не всегда может распознать подсказку ведущего. Вероятность его выигрыша равна 83%, в отличии от «Player».
2.2 Демонстрация работы
На рис.2 продемонстрирована работа программы при взаимодействии агентов типа «Master» и «Player».
Рис.2. Демонстрация работы программы при взаимодействии агентов типа «Master» и «Player».
На рис.3 продемонстрирована работа программы при взаимодействии агентов типа «Master» и «Apprentice».
Рис.3. Демонстрация работы программы при взаимодействии агентов типа «Master» и «Apprentice».
Вывод
В ходе данной курсовой работы мы изучили мультиагентную платформу JADE, научились моделировать системы с её помощью, разработали приложение для демонстрации возможностей данной платформы.
Список литературы
1. Интернет ресурс. URL: https://ru.wikipedia.org/wiki/Агентно-ориентированный_подход.
2. Shoham Yoav. Multiagent systems: Algorithmic, Game-Theoretic, and Logical Foundations = Artificial Intelligence: A Modern Approach. -- Cambridge University Press, 2009.
3. Educational Technology & Society 8(3) 2005 ISSN 1436-4522 Использование JADE (Java Agent Development Environment) для разработки компьютерных систем поддержки дистанционного обучения агентного типа Глибовец Н.Н. Университет “Киево-Могилянская академия”.
4. Архитектура и реализация платформы JADE. Гореликов М.В., Иванов А.М. МГТУ им. Н.Э. Баумана, каф. ИУ-3.
5. Интернет ресурс. URL: http://jade.tilab.com/documentation/tutorials-guides/.
6. Особенности разработки мультиагнетных систем на платформе Jade Semantic Agent Framework.
7. Интернет ресурс. URL: http://www.iro.umontreal.ca/~vaucher/Agents/Jade/JadePrimer.html.
8. Агенты, многоагентные системы, виртуальные сообщества: стратегическое направление в информатике и искусственном интеллекте. Тарасов В.Б.
Приложение
Листинг программы агента «Master»
package kr;
import jade.core.Agent;
import jade.core.behaviours.*;
import jade.domain.DFService;
import jade.domain.FIPAAgentManagement.DFAgentDescription;
import jade.domain.FIPAAgentManagement.ServiceDescription;
import jade.lang.acl.*;
import java.util.Random;
public class master extends Agent {
protected String[][] list = {
{
"Привет players !"
},
{
"В первом стаканчике !",
"Во втором стаканчике !",
"В третьем стаканчике !"
},
{
"В кaком стаканчике шарик ?",
"В каком стaканчике шарик ?",
"В каком стакaнчике шарик ?",
"В каком стаканчике шарик ?"
},
{
"Пока players !"
}
};
DFAgentDescription[] result;
public String secret = "";
public int scrt = 0;
public boolean flag = true;
protected void setup() {
final DFAgentDescription dfd = new DFAgentDescription();
//dfd.setName(getAID());
ServiceDescription sd = new ServiceDescription();
//sd.setType("kr");
//sd.setName("master");
dfd.addServices(sd);
try {
result = DFService.search(this, dfd);
System.out.println(result.length + " в ожиданиие игры" );
} catch (Exception e) {
System.out.println(e);
}
final Agent agent = this;
ACLMessage msg = new ACLMessage(ACLMessage.INFORM);
for(int i = 0; i<result.length; i++) {
msg.addReceiver(result[i].getName());
msg.setLanguage("English");
//Random r = new Random();
msg.setContent(list[0][0]);
send(msg);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +msg.getContent() + "'' ");
}
addBehaviour(new TickerBehaviour(this, 5000) { // 5000 = 5 секундам
protected void onTick() {
try {
result = DFService.search(agent, dfd);
if (result.length>0) {
} else {
System.out.println(" ** " + getLocalName() + " ожидает новых игроков... ");
}
} catch (Exception e) {
System.out.println(e);
}
ACLMessage msg = new ACLMessage(ACLMessage.INFORM);
for(int i = 0; i<result.length; i++) {
if (result.length != 0) {
msg.addReceiver(result[i].getName());
msg.setLanguage("English");
Random r = new Random();
if (flag == true) {
scrt = r.nextInt(4);
//System.out.println(scrt);
}
if (flag == false) {
scrt = r.nextInt(3);
}
if (scrt == 3) {
secret = (list[1][r.nextInt(3)]);
msg.setContent(list[2][scrt]);
} else {
secret = (list[1][scrt]);
msg.setContent(list[2][scrt]);
}
send(msg);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +msg.getContent() + "'' ");
} else {
System.out.println("Нет игроков, ожидаю...");
}
}
}
});
addBehaviour(new CyclicBehaviour(this) {
public void action() {
ACLMessage msg = receive();
if (msg!=null) {
System.out.println(" -> " + getLocalName() + " принял сообщение" + " ''" +msg.getContent() + "'' ")
if (msg.getContent().equals(list[1][0])) {
if (msg.getContent().equals(secret)) {
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
reply.setContent("Верно !");
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
System.out.println(" ** " + getLocalName() + " отдает деньги выигравшему игроку ");
} else {
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
reply.setContent("Не верно !");
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
System.out.println(" ** " + getLocalName() + " забирает деньги проигравшего игрока ");
}
}
if (msg.getContent().equals(list[1][1])) {
if (msg.getContent().equals(secret)) {
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
reply.setContent("Верно !");
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
System.out.println(" ** " + getLocalName() + " отдает деньги выигравшему игроку ");
} else {
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
reply.setContent("Не верно !");
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
System.out.println(" ** " + getLocalName() + " забирает деньги проигравшего игрока ");
}
}
if (msg.getContent().equals(list[1][2])) {
if (msg.getContent().equals(secret)) {
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
reply.setContent("Верно !");
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
System.out.println(" ** " + getLocalName() + " отдает деньги выигравшему игроку ");
} else {
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
reply.setContent("Не верно !");
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
System.out.println(" ** " + getLocalName() + " забирает деньги проигравшего игрока ");
}
}
}
}
});
}
}
Листинг программы агента «Player»
package kr;
import jade.core.Agent;
import jade.core.behaviours.*;
import jade.domain.DFService;
import jade.domain.FIPAAgentManagement.DFAgentDescription;
import jade.domain.FIPAAgentManagement.ServiceDescription;
import jade.lang.acl.*;
import java.util.Random;
public class player extends Agent {
protected String[][] list = {
{
"Привет master !"
},
{
"В первом стаканчике !",
"Во втором стаканчике !",
"В третьем стаканчике !"
},
{
"Ура я выйграл !",
"Жаль я проиграл !"
},
{
"Пока master !"
}
};
public int cash = 3;
protected void setup() {
DFAgentDescription dfd = new DFAgentDescription();
dfd.setName(getAID());
ServiceDescription sd = new ServiceDescription();
sd.setType("kr");
sd.setName("player");
dfd.addServices(sd);
final Agent agent = this;
try {
DFService.register(this, dfd);
System.out.println(getLocalName() + " Пришёл играть... ");
} catch (Exception e) {
System.out.println(e);
}
addBehaviour(new CyclicBehaviour(this) {
public void action() {
ACLMessage msg = receive();
if (msg!=null) {
System.out.println(" -> " + myAgent.getLocalName() + " принял сообщение " + " ''" +msg.getContent() + "'' ");
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
Random r = new Random();
switch (msg.getContent()) {
case "Привет players !":
reply.setContent(list[0][0]);
break;
case "В кaком стаканчике шарик ?":
reply.setContent(list[1][r.nextInt(2)]);
break;
case "В каком стaканчике шарик ?":
reply.setContent(list[1][r.nextInt(2)]);
break;
case "В каком стакaнчике шарик ?":
reply.setContent(list[1][r.nextInt(2)]);
break;
case "В каком стаканчике шарик ?":
reply.setContent(list[1][r.nextInt(2)]);
break;
case "Верно !":
reply.setContent(list[2][0]);
cash++;
System.out.println(" ** " + getLocalName() + " Имеет на руках сумму равную " + cash);
break;
case "Не верно !":
reply.setContent(list[2][1]);
cash--;
System.out.println(" ** " + getLocalName() + " Имеет на руках сумму равную " + cash);
break;
}
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
if (cash == 6) {
try {
DFService.deregister(agent);
}
catch (Exception e) {
System.out.println(e);
}
System.out.println(" ** " + getLocalName() + " ''Спасибо за хорушую игру! Всем пока...'' ");
doDelete();
}
if (cash == 0) {
try {
DFService.deregister(agent);
}
catch (Exception e) {
System.out.println(e);
}
System.out.println(" ** " + getLocalName() + " ''Увы у меня кончились деньги, немогу играть. Всем пока...'' ");
doDelete();
}
}
}
});
}
}
Листинг программы агента «Apprentice»
package kr;
import jade.core.Agent;
import jade.core.behaviours.*;
import jade.domain.DFService;
import jade.domain.FIPAAgentManagement.DFAgentDescription;
import jade.domain.FIPAAgentManagement.ServiceDescription;
import jade.lang.acl.*;
import java.util.Random;
public class apprentice extends Agent {
protected String[][] list = {
{
"Привет master !"
},
{
"В первом стаканчике !",
"Во втором стаканчике !",
"В третьем стаканчике !"
},
{
"Ура я выйграл !",
"Жаль я проиграл !"
},
{
"Пока master !"
}
};
public int cash = 3;
protected void setup() {
DFAgentDescription dfd = new DFAgentDescription();
dfd.setName(getAID());
ServiceDescription sd = new ServiceDescription();
sd.setType("kr");
sd.setName("apprentice");
dfd.addServices(sd);
final Agent agent = this;
try {
DFService.register(this, dfd);
System.out.println(getLocalName() + " Пришёл играть... ");
} catch (Exception e) {
System.out.println(e);
}
addBehaviour(new CyclicBehaviour(this) {
public void action() {
ACLMessage msg = receive();
if (msg!=null) {
System.out.println(" -> " + myAgent.getLocalName() + " принял сообщение " + " ''" +msg.getContent() + "'' ");
ACLMessage reply = msg.createReply();
reply.setPerformative( ACLMessage.INFORM );
Random r = new Random();
switch (msg.getContent()) {
case "Привет players !":
reply.setContent(list[0][0]);
break;
case "В кaком стаканчике шарик ?":
reply.setContent(list[1][0]);
break;
case "В каком стaканчике шарик ?":
reply.setContent(list[1][1]);
break;
case "В каком стакaнчике шарик ?":
reply.setContent(list[1][2]);
break;
case "В каком стаканчике шарик ?":
reply.setContent(list[1][r.nextInt(2)]);
break;
case "Верно !":
reply.setContent(list[2][0]);
cash++;
System.out.println(" ** " + getLocalName() + " Имеет на руках сумму равную " + cash);
break;
case "Не верно !":
reply.setContent(list[2][1]);
cash--;
System.out.println(" ** " + getLocalName() + " Имеет на руках сумму равную " + cash);
break;
}
send(reply);
System.out.println(" <- " + getLocalName() + " отправил сообщение " + " ''" +reply.getContent() + "'' ");
if (cash == 6) {
try {
DFService.deregister(agent);
}
catch (Exception e) {
System.out.println(e);
}
System.out.println(" ** " + getLocalName() + " ''Спасибо за хорушую игру! Всем пока...'' ");
doDelete();
}
if (cash == 0) {
try {
DFService.deregister(agent);
}
catch (Exception e) {
System.out.println(e);
}
System.out.println(" ** " + getLocalName() + " ''Увы у меня кончились деньги, немогу играть. Всем пока...'' ");
doDelete();
}
}
}
});
}
}
Размещено на Allbest.ru
Подобные документы
Азартные игры и наблюдение за спортивными состязаниями. Моделирование методом Монте-Карло - мощное средство, позволяющее определять вероятность событий в азартных играх и спорте. Моделирование вероятности событий с помощью программы Microsoft Excel.
реферат [801,3 K], добавлен 13.05.2009Моделирование как основная функция вычислительных систем. Разработка концептуальной модели для системы массового обслуживания и ее формализация. Аналитический расчет и алгоритмизация модели, построение блок-диаграмм. Разработка и кодирование программы.
курсовая работа [164,8 K], добавлен 18.12.2011Моделирование движения пешехода и составление блок-схемы программы. Построение изображения выходного сигнала в MathCAD и нормирование переходной характеристики. Модель программы обслуживание покупателей на языке GPSS/PC-2, описание команд и операндов.
курсовая работа [635,4 K], добавлен 01.02.2014Разработка программы моделирования объекта в среде пакета MathCAD с использованием встроенных функций. Стехиометрический анализ и модель кинетики. Моделирование режима запуска и вывода аппарата на нужный режим. Математическая модель динамики объекта.
курсовая работа [2,0 M], добавлен 19.11.2011Моделирование работы вычислительной системы из двух процессоров и общей оперативной памяти. Структурная схема модели системы. Укрупненная схема моделирующего алгоритма. Результаты моделирования и их анализ. Машинная программа объекта исследования.
курсовая работа [1,0 M], добавлен 21.06.2011Имитационное моделирование кредитной системы коммерческого банка с применением экспоненциального, дискретного равномерного и нормального распределения. Создание и программная реализация математической модели на языке С++ и ее построение в MathCad.
курсовая работа [319,1 K], добавлен 13.02.2013Сфера применения имитационного моделирования. Исследование и специфика моделирования системы массового обслуживания с расчетом стационарных значений системы и контролем погрешности получаемых значений. Реализация ее в GPSS и на языке высокого уровня Java.
курсовая работа [818,7 K], добавлен 23.05.2013Моделирование работы мастерской с использованием языка GPSS Wоrld. Определение основныx xарактеристик моделируемой системы: средней длины очереди неисправныx аппаратов; коэффициента загрузки мастеров. Описание машинной программы решения задачи.
курсовая работа [380,6 K], добавлен 28.06.2011Особенности разработки информационных систем с использованием унифицированного языка моделирования UML. Основные этапы рационального унифицированного процесса разработки информационных систем с примерами и иллюстрациями. Реализация информационной системы.
методичка [950,2 K], добавлен 23.01.2014Понятие и функциональные особенности Java Card как версии Java-платформы для устройств с крайне ограниченными вычислительными ресурсами, оценка ее возможностей и необходимых ресурсов. Анализ степени безопасности платформы, взаимодействие компонентов.
презентация [1,0 M], добавлен 19.05.2014