Презентации по Информатике

Мобильное приложение Smart Astana. Проект
Мобильное приложение Smart Astana. Проект
6000 (300+400) камер на перекрестках и линейных участках автодорог города 4000 камер в местах массового скопления людей 3000 интеграция сторонних камер (ТРК, БЦ и другие) 1000 Мобильных рабочих мест с автоматизацией протоколов и функцией предотвращения ДТП 50 Метео и экологических датчиков Сервера и системы хранения данных СРОК ДОГОВОРА ГЧП: 6 лет 7 месяцев Состав Пускового Комплекса 1: 300 аппаратно-программных комплексов «Сергек» на линейных участках; 200 аппаратно-программных комплексов «Сергек» на перекрестках; 800 камер общего видеонаблюдения; 275 мобильных рабочих мест; система хранения данных; сервер процессинга и аналитики; 2 маршрутизатора; 1 200 интегрированных камер общего видеонаблюдения. Состав Пускового Комплекса 2: 200 аппаратно-программных комплексов «Сергек» на перекрестках; 3 200 камер общего видеонаблюдения; 1 800 интегрированных камер общего видеонаблюдения; 725 мобильных рабочих мест. ИНВЕСТИЦИИ: 8,2 млрд. тенге «Создание и эксплуатация аппаратно-программного комплекса фотовидеофиксации и видеоаналитики в городе Нур-Султан» (СЕРГЕК) Готовность Проекта 80% 2 ВОЗМОЖНОСТИ АПК «СЕРГЕК» АНАЛИТИКА ФИКСАЦИИ НАРУШЕНИЙ: Распознавание государственного регистрационного знака; Фото, - видео фиксация нарушений скоростного режима; Проезд на запрещающий сигнал светофора; Пересечение стоп-линии на запрещающий сигнал светофора; Несоблюдение требований дорожных знаков или разметки; Движение по полосе общественного транспорта. СБОР СТАТИСТИКИ: Подсчет количества авто; Дорожная нагрузка; Треккинг (отслеживание) авто по госномеру; Злостные нарушители. 3
Продолжить чтение
Код Хэмминга
Код Хэмминга
ИСТОРИЯ И НАЗНАЧЕНИЕ В середине 1940-х годов Ричард Хэмминг работал в знаменитых Лабораториях Белла на счётной машине Bell Model V. Это была электромеханическая машина, использующая релейные блоки, скорость которых была очень низка: один оборот за несколько секунд. Данные вводились в машину с помощью перфокарт, и поэтому в процессе чтения часто происходили ошибки. В рабочие дни использовались специальные коды, чтобы обнаруживать и исправлять найденные ошибки, при этом оператор узнавал об ошибке по свечению лампочек, исправлял и запускал машину. В выходные дни, когда не было операторов, при возникновении ошибки машина автоматически выходила из программы и запускала другую. Хэмминг часто работал в выходные дни, и все больше и больше раздражался, потому что часто был должен перезагружать свою программу из-за ненадежности перфокарт. На протяжении нескольких лет он проводил много времени над построением эффективных алгоритмов исправления ошибок. В 1950 году он опубликовал способ, который на сегодняшний день известен как код Хэмминга. Код Хэмминга используется для обнаружения и исправления ошибок в двоичных сообщениях (в прикладных программах в области хранения данных, особенно в RAID 2); КОНТРОЛЬНЫЕ БИТЫ В исходное сообщение добавляется избыточность – контрольные биты (обозначаются как ε), которые будут контролировать правильность передачи каждого символа в сообщении. Место расположение контрольных бит в исходном определяется по формуле : № -номер (положение) №ε = 2i , где i = 0,1,2,3,4 и т.д. тогда № ε = 1,2,4,8,16,32,64,128,256 и т.д.   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18   Формула кодового слова такова: ε0 ε1 а1 ε2 а2 а3 а4 ε3 а5 а6 а7 а8 а9 а10 а11 ε4   Понятно, что количество ε в кодовой последовательности зависит от количества символов в исходной. Например: в последовательности из 4 символов их 3 (ε0 ε1 а1 ε2 а2 а3 а4 )
Продолжить чтение
Параллельное программирование
Параллельное программирование
Существуют различные способы написания программ, (разделение условное) : Последовательное программирование с дальнейшим автоматическим распараллеливанием. Непосредственное формирование потоков параллельного управления, с учетом особенностей архитектур параллельных вычислительных систем или операционных систем. Описание параллелизма без использования явного управления обеспечивается заданием только информационных связей. Предполагается, что программа будет выполняться на вычислительных системах с бесконечными ресурсами, операторы будут запускаться немедленно по готовности их исходных данных. Достижение параллелизма возможно только при выполнении следующих требований к архитектурным принципам построения вычислительной среды: независимость функционирования отдельных устройств ЭВМ – данное требование относится в равной степени ко всем основным компонентам вычислительной системы: к устройствам ввода-вывода, обрабатывающим процессорам и устройствам памяти; избыточность элементов вычислительной системы – организация избыточности может осуществляться в следующих основных формах: - использование специализированных устройств, таких, например, как отдельные процессоры для целочисленной и вещественной арифметики, устройства многоуровневой памяти (регистры, кэш); - дублирование устройств ЭВМ путем использования, например, нескольких однотипных обрабатывающих процессоров или нескольких устройств оперативной памяти.
Продолжить чтение
Программирование на языке высокого уровня
Программирование на языке высокого уровня
Задача погони Волк гонится за зайцем, который бежит по прямой с постоянной скоростью. Волк тоже бежит с постоянной скоростью и всегда по направлению к зайцу. В некоторый момент времени угол между направлениями их движения составляет 900, а расстояние между ними составляет L0. Через какое время волк настигнет зайца, при условии, что его скорость больше? // исходные данные: скорости uz и uv, // положение волка yv, шаг времени dt double gamma = Math.PI / 2; double xz = 0, xv = 0, t = 0; for (;; t = t + dt) { // вывод координат ... xz = xz + dt * uz; gamma = Math.Atan2(yv, xz - xv); xv = xv + dt * uv * Math.Cos(gamma); yv = yv - dt * uv * Math.Sin(gamma); if (xv > xz) break; } // вывод окончательных результатов ... // вывод координат double L = Math.Sqrt(yv*yv + (xz-xv)*(xz-xv)); textBox1.Text = textBox1.Text + String.Format("Волк({0:0}; {1:0})\t Заяц({2:0}; 0)\t L={3:0.0}\t угол={4:0.0}\r\n", xv, yv, xz, L, 180*gamma/Math.PI); // вывод окончательных результатов textBox1.Text = textBox1.Text + String.Format("\r\nL = {0:0.###}, t = {1:0.###}", L, t); Искусственный нейрон Одного искусственного нейрона достаточно, чтобы… …реализовать логическую функцию (AND, OR, NOT) …моделировать, например, поведение таракана, который в случае опасности прячется в тёмное укрытие ...обыграть человека в «Орёл/решку»! public partial class Form1 : Form { int[] x, w; int N = 8, win, loss, guess; Random r = new Random(); private void button1_Click(object sender, EventArgs e) { // получение отклика нейрона int sum = 0; for (int i = 0; i < N; i++) sum += x[i] * w[i]; // формирование догадки guess = (sum == 0)? r.Next(2): ((sum > 0)? 0: 1); label2.Text = "Вы загадали " + guess + "?"; } private void button_YES_Click(object sender, EventArgs e) { win++; // обучение нейрона ... } private void button_NO_Click(object sender, EventArgs e) { loss++; guess = (guess == 0) ? 1 : 0; // обучение нейрона ... } } // обучение нейрона int sign = 2 * guess - 1; for (int i = 0; i < N; i++) w[i] += sign * x[i]; for (int i = 0; i > N-1; i++) x[i] = x[i + 1]; x[N - 1] = sign;
Продолжить чтение
Django (продолжение). Лекция №15
Django (продолжение). Лекция №15
Валидаторы Прежде чем приступить к продолжению, обновим нашу модель. По аналогии с другими полями создаем поле поле rate (оценка), использовав класс IntegerField. При этом мы хотим ограничить возможную оценку от 1 до 10. Для этого при создании rate в конструктор класса IntegerField передаются валидаторы: # Файл coolapp/models.py from django.db import models from django.core.validators import MaxValueValidator, MinValueValidator class Film(models.Model): name = models.CharField(max_length=200) desc = models.TextField() pub_date = models.DateTimeField('date published', auto_now_add=True) rate = models.IntegerField(validators=[MinValueValidator(1), MaxValueValidator(10)], default=1) Валидаторы передаются списком в аргумент validators, при этом в их конструкторы передаются сами граничные числа. Также при создании поля rate указываем аргумент default - это будет значение по умолчанию. Миграция обновлений После изменений в модели создаем миграцию и применяем ее: $ python3 manage.py makemigrations coolapp $ python3 manage.py migrate
Продолжить чтение
Скоростное прохождение игр (Speedrun)
Скоростное прохождение игр (Speedrun)
Скоростное прохождение игры (англ. speedrun) — прохождение компьютерной игры за наименьший промежуток времени в рамках соревнования или для развлечения. При скоростном прохождении игрок проявляет не только своё мастерство, но часто использует необычные для данной игры трюки и непредусмотренные разработчиками особенности игры. Для демонстрации создаются записи скоростных прохождений в одном из видеоформатов, либо в формате демо-файла самой игры. Зачем и кому нужен Спидран. В первую очередь, спидраном увлечены те геймеры, которые хотят привнести в свой игровой опыт больше соревновательного элемента, чем изначально присутствует в игре. Как показать что ты круче в одиночных играх, где нет рейтингов и соревновательного эффекта? В такие моменты и на помощь приходит спидран. Хотя и у спидранеров бывают разные мотивы пускаться во все тяжкие, будь-то обычное желание повеселиться самому или повеселить других, или же лучше узнать ту или иную игру, вплоть до мельчайших деталей и секретов. Но, все же, наиболее распространенный мотив — это соревнование с собой, временем и другими спидранерами.
Продолжить чтение