Объектно-ориентированное программирование

Автор: Пользователь скрыл имя, 28 Февраля 2012 в 22:18, курсовая работа

Краткое описание

Жизни современного общества присущи усложнение составляющих ее процессов, многовариантность возможностей, неоднозначность тенденций и достигаемых результатов.
В таких условиях особенно возрастает потребность в эффективном инструменте анализа и прогнозирования экономических ситуаций.

Оглавление

Введение 3
1. Понятие объектно-ориентированного моделирования…. 5
1.1. Общее понятие модели и агентного моделирования. 5
1.2. Сущность объектно-ориентированных моделей. 10
1.3. Моделирование социальных процессов 12
2. Модель «Распределение богатства» 16
2.1. Теория распределения богатства. 16
2.2. Характеристика модели распределения богатства. 18
2.3. Анализ модели распределения богатства. 19
Заключение 26
Список использованных источников 27

Файлы: 1 файл

Курсовая.docx

— 550.02 Кб (Скачать)

С середины 1990-х годов, АОМ  стали использовать для решения  множества коммерческих и технологических  проблем. Примерами могут послужить задачи:

  • оптимизации сети поставщиков и логистика;
  • моделирования потребительского поведения (в том числе социальные сети);
  • распределенных вычислений;
  • менеджмента трудовых ресурсов;
  • управления транспортом;
  • управления инвестиционными портфелями.

Одной из программ для разработки АОМ является бесплатно распространяемое приложение NetLogo. Изначально NetLogo был разработан как учебный инструмент, однако сейчас им пользуются не только студенты, но и тысячи исследователей. Это программа часто применяется в ВУЗах для обучения студентов основам АОМ. Схожей функциональностью обладает программа StarLogo. Инструментов для реализации более широкого спектра задачи в области АОМ является программа Swarm. В ней используется язык программирования Objective-C и она может быть рекомендована программистам, пишущих на C, причем не только профессионалам, но и новичкам. Программировать в среде Swarm можно так же и на языке Java. Отметим также ещё несколько программ: MASON, Repast (используется Java), EcoLab (используется C++), [1] Cormas (используется SmallTalk).[7]

 

    1. Моделирование социальных процессов

Под социальным процессом понимается:

а) последовательное изменение  состояний или элементов социальной системы и ее подсистем любого социального объекта;

б) любая поддающаяся идентификации, повторяющаяся модель социальных взаимодействий - конфликт, кооперация, конференция, дифференциация и т.д.

Переход от гуманитарных методов  изучения социальных систем, в которых  основную роль играет интуиция самого исследователя, когда угадываются неповторимые, индивидуальные черты исследуемого объекта или явления, к методам рациональным, при которых объекту стараются найти место в ряду ему родственных, стирая при этом его индивидуальные черты и акцентируя внимания только на общих для них всех сторонах, происходит посредством процесса формализации [37, с.6].

Моделирование в социологии - это метод исследования социальных явлений и процессов на их моделях, т.е. опосредованное изучение социальных объектов, в процессе которо-го они воспроизводятся во вспомогательной системе (модели), замещающей в познавательном процессе оригинал и позволяющей получать новое знание о предмете исследования [43].

Имеется два подхода к  построению модели общественных процессов: локальный и глобальный. В локальном случае рассматриваются поведение нескольких индивидов (личностей) или групп и на основе их локального взаимодействия показывается общее развитие общества. Описываются объекты исследования: человек, семья, группа. Задаются возможные состояния объектов, перечислятся факторы внутреннего и внешнего воздействия и определяются правила, по которым объекты моделирования развиваются и взаимодействуют друг с другом и с внешней средой.

При глобальном подходе рассматривается  весь социум (этнос, государство, все человечество), исследуются общие для всех характеристики (например политическая система). Как правило, при глобальном подходе исследуются большие промежутки времени (несколько десятков или сотен лет), так как тогда на динамике социума менее сказывается поведение отдельного человека, партии и т.п. Для изучения выбирается объект исследования, выделяется его структура (элементы, функциональные зависимости), определяется интервал времени (век, тысячелетие).

Использование компьютерного  моделирования в социальных науках довольно новая идея, хотя первые работы в этом направлении были осуществлены в 1960-х, а широкое использование компьютеров началось в 1990-х. Эта идея имеет огромный потенциал потому, что моделирование представляет собой превосходный путь прогнозирования и понимания социальных процессов. Компьютерное моделирование предоставляет возможность реализовать идею рождения сложного социального поведения из сравнительно простых действии индивидов.

Процесс компьютерного моделирования  социальных процессов включает в себя следующие этапы:

  •    ознакомление с социологической теорией, на основе которой строится модель.
  •    поиск основных элементов структуры объекта, взаимосвязей, управляющих факторов.
  •    построение информационной модели и аналитических схем на основе социологической теории объекта моделирования.
  •    теоретическое изучение готовой информационной модели и построение математической модели (выбор математического аппарата, формализация структуры, взаимосвязей и элементов).
  •    построение компьютерной реализации математической модели (выбор метода компьютерного моделирования и алгоритма моделирования).
  •    практическое изучение готовой компьютерной модели.

В результате анализа компьютерной модели приходим к выводу об адекватности построенной модели моделируемому социальному процессу. Далее принимается решение: либо изменить структуру построенной модели с целью ее совершенствования и улучшения, либо произвести дополнительный анализ социологического объекта, либо собрать недостающие сведения об исследуемом социальном процессе.

Компьютерные модели имеют  много преимуществ по сравнению с другими подходами при изучении социальных процессов. В частности, они дают возможность учитывать большое количество переменных, предсказывать развитие нелинейных процессов, возникновение синергетических эффектов (качественной трансформации структуры исследуемого объекта в результате непредсказуемого изменения состояния). Кроме того, они позволяют не только получить прогноз, но и найти с помощью вычислительных экспериментов, какие управляющие воздействия приведут к наиболее благоприятному развитию событий.

Таким образом, компьютерные модели социальных процессов и вычислительные эксперименты с этими моделями являются важным средством управления социальными процессами. Сам процесс воплощения теоретических представлений в виде модели позволяет глубже вникнуть в суть моделируемых явлений, а верификация модели (проведение на ней вычислительных экспериментов и сопоставление полученных результатов с данными эмпирических исследований) является фактически и проверкой теории, положенной исследователем в основу модели [36].

Компьютерное моделирование  дает возможность исследовать сложные системы, части которых описаны различными математическими методами. Использование компьютерного моделирования для изучения социальных процессов позволяет выявить:

  • внешние параметры того или иного процесса;
  • закономерности, которые не доступны наблюдению в естественных условиях,
  • связи имитируемых явлений с теми параметрами, которые автоматически задаются программой;
  • поиск параметров, оптимизирующих протекание имитируемого процесса, и т.д.

Одним из самых успешных результатов использования компьютерного  моделирования явилось предсказание возникновения так называемой ядерной зимы как неизбежного следствия мировой войны с задействованием всех запасов атомного оружия. Оставшиеся в живых люди, даже проживающие в странах или на континентах, не подвергшихся нападению, погибнут в течение 2-3 лет от холода, поскольку пепел от сгоревших городов закроет солнце, а температура на Земле упадет до —70°, и это будет продолжаться сотни лет. Важно отметить что модели последствий атомной мировой войны были независимо построены и подвергнуты вычислительным экспериментам как в СССР, так и в США. Выводы были одинаковыми. Отношение политиков этих стран к нахождению взаимопонимания за столом переговоров стало более ответственным.[1]

  1. Модель  «Распределение богатства»

    1. Теория распределения богатства.

Современная теория распределения  включает анализ «социальных доходов», т.е. доходов, предоставляемых экономическим  субъектам независимо от их вклада в создание совокупного общественного  продукта. Государство с помощью  налоговой системы изымает часть  вознаграждений производителей в госбюджет, а затем перераспределяет эти  ресурсы через статьи государственных  расходов или расходов на социальные нужды.

Индивидуальное распределение  означает определение доходов отдельных  лиц, семей, домашних хозяйств и т.п., а также факторов, определяющих их уровень.

На микроэкономическом уровне анализ индивидуального распределения  позволяет выявить элементы, образующие доход отдельного человека. Сюда относятся: различного рода вознаграждения за свой вклад в производство, т.е. заработная плата, проценты за ссуженный капитал, дивиденды, выплачиваемые за акции  компаний, промышленные, торговые и  сельскохозяйственные прибыли, а также  полученные доходы, не связанные с  вкладом в производство (пенсии, пособия по безработице, помощь семьи, наследство и др.). Величина вознаграждения зависит от объема производимых услуг, нормы их оплаты; обстоятельств, регулирующих распределение различных источников производительных услуг среди членов общества (например, частной собственности  на средства производства); обстоятельств, влияющих На политику перераспределения  доходов.

На макроуровне индивидуальное распределение означает распределение  национального дохода среди отдельных  лиц, которое раскрывает источники  личных доходов и их сравнительные  величины. Основным совокупным показателем  здесь выступает доход частных  лиц или семейных хозяйств. Валовой доход семейных хозяйств включает: чистую заработную плату; пособия и другие выплаты по социальному обеспечению; проценты, дивиденды и арендную плату, помощь на обустройство (строительство жилья); компенсацию за ущерб, нанесенный войной; текущее страховое возмещение убытков; переводы заработной платы граждан, находящихся на работе за границей; валовой доход индивидуальных предпринимателей; доход, полученный от личного подсобного хозяйства, сдачи в аренду жилья и т.д.

При определении дохода частных  лиц учитываются доходы от факторов производства, которые не получают семейные хозяйства (например, нераспределенную прибыль коммерческих организаций), взносы на социальное страхование, которые  вычитаются из национального дохода, и трансферты, дополняющие национальный доход. Различают государственные  трансферты (пенсии, проценты по государственному долгу), социальные трансферты (выплаты  из фондов социального страхования, семейные пособия), трансферты между  предприятиями (одни фирмы получают дивиденды от других фирм), некоммерческие трансферты (спонсорские отчисления).

При изучении индивидуального  распределения мы сталкиваемся с  социальной проблемой неравенства  личных доходов людей. Неравенство  доходов не является следствием неравенства  производительности труда и эффективности  производства. Во многом оно определяется неравенством распределения частной  собственности на факторы производства и правовыми нормами, определяющими  ее передачу: например, по наследству доходы отдельных людей могут быть представлены как доходы заработанные (в зависимости  от личных условий и труда) и «незаработанные».

Неравенство доходов критиковалось  и осуждалось во все времена. В  начале XX в. во всех странах получила развитие политика перераспределения  доходов, направленная на более справедливое распределение национального дохода. [8]

    1. Характеристика модели распределения богатства.

Эта модель исходит из модели Epstein & Axtell "Sugarscape". В ней используется зерно вместо сахара. Каждое пятно имеет конкретное количество зерен и их свойства (количество зерна  может расти). Люди собирают зерна с пятен и едят их, чтобы выжить. Количество зёрен, которое каждый человек съедает, является его богатством.

Модель начинается с примерно равного распределения богатства. Люди блуждают по земле и собирают столько зерна, сколько возможно. Каждый человек пытается двигаться в направлении, где находится большинство зёрен. Каждый временной промежуток каждый человек ест определенное количество зерна. Это количество называется метаболизмом. У людей также есть время жизни. Когда их продолжительность жизни заканчивается или они исчерпывают всё зерно, они умирают и производят потомство. Потомство имеет случайный метаболизм и случайное количество зерна, в пределах от количества зерна, которым обладает самый бедный человек к количеству зерна, которым обладает самый богатый человек. (Нет никакого наследования богатства).

Чтобы наблюдать справедливость (или несправедливость) распределения богатства, используется графический инструмент, названный кривой Lorenz. Мы ранжируем население по его богатству и затем составляем график процента населения, которму принадлежит каждый процент богатства (например, 30 % богатства принадлежат 50 % населения). Следовательно диапазоны на обоих осях от 0 % до 100 %.

Для числового измерения  неравномерности распределения богатства используется индекс Джини (или коэффициент Джини), полученный из кривой Лоренца.

 

 

Элементы управления моделью.

percent-best-land определяет начальную плотность пятен, на которых посажено максимальное количество зкрна. Этот максимум изменяется через переменную MAX-GRAIN  в процедуре SETUP в окне процедур. grain-growth-interval определяет, как часто зерно растет. num-grain-grown устанавливает, какое количество зерна растёт за интервал, который определяется сдвигом GRAIN-GROWTH-INTERVAL. NUM-PEOPLE определяет начальное число людей. life-expectancy-min – минимальная продолжительность жизни населения. life-expectancy-mAX – максимальная продолжительность жизни населения. metabolism-max устанавливает максимально возможное количество зерна, которое человек может съесть за определённый момент времени. MAX-VISION - самое далекое возможное расстояние, на которое может видеть человек.

Информация о работе Объектно-ориентированное программирование