Как найти количество информации в слове

Как определить количество информации

Все мы привыкли к тому, что все вокруг можно измерить. Мы можем определить массу посылки, длину стола, скорость движения автомобиля. Но как определить количество информации, содержащееся в сообщении? Ответ на вопрос в статье.

Итак, давайте для начала выберем сообщение. Пусть это будет «Принтер — устройство вывода информации.«. Наша задача — определить, сколько информации содержится в данном сообщении. Иными словами — сколько памяти потребуется для его хранения.

Как определить количество информации

Определение количества информации в сообщении

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

В слове Принтер 6 различных символов (р встречается дважды и считается один раз), далее 7-й символ пробел и девятый — тире. Так как пробел уже был, то после тире мы его не считаем. В слове устройство 10 символов, но различных — 7, так как буквы  с, т и о повторяются. Кроме того буквы т и р уже была в слове Принтер. Так что получается, что в слове устройство 5 различных символов. Считая таким образом дальше мы получим, что в сообщении 20 различных символов.

Далее вспомним формулу, которую называют главной формулой информатики:

2i=N

Подставив в нее вместо N количество различных символов, мы узнаем, сколько информации несет один символ в битах. В нашем случае формула будет выглядеть так:

2i=20

Вспомним степени двойки и поймем, что i находится в диапазоне от 4 до 5 (так как 24=16, а 25=32). А так как бит — минимальная единица измерения информации и дробным быть не может, то мы округляем i в большую сторону до 5. Иначе, если принять, что i=4, мы смогли бы закодировать только 24=16 символов, а у нас их 20. Поэтому получаем, что i=5, то есть каждый символ в нашем сообщении несет 5 бит информации.

Осталось посчитать сколько символов в нашем сообщении. Но теперь мы будем считать все символы, не важно повторяются они или нет. Получим, что сообщение состоит из 39 символов. А так как каждый символ — это 5 бит информации, то, умножив 5 на 39 мы получим:

5 бит x 39 символов = 195 бит

Это и есть ответ на вопрос задачи — в сообщении 195 бит информации. И, подводя итог, можно написать алгоритм нахождения объема информации в сообщении:

  • посчитать количество различных символов.
  • подставив это значение в формулу 2i=N найти вес одного символа (округлив в большую сторону)
  • посчитать общее количество символов и умножить это число на вес одного символа.

Автор:

Мы ежедневно работаем с информацией из разных источников. При этом каждый из нас имеет некоторые интуитивные представления о том, что означает, что один источник является для нас более информативным, чем другой. Однако далеко не всегда понятно, как это правильно определить формально. Не всегда большое количество текста означает большое количество информации. Например, среди СМИ распространена практика, когда короткое сообщение из ленты информационного агентства переписывают в большую новость, но при этом не добавляют никакой «новой информации». Или другой пример: рассмотрим текстовый файл с романом Л.Н. Толстого «Война и мир» в кодировке UTF-8. Его размер — 3.2 Мб. Сколько информации содержится в этом файле? Изменится ли это количество, если файл перекодировать в другую кодировку? А если заархивировать? Сколько информации вы получите, если прочитаете этот файл? А если прочитаете его второй раз?

По мотивам открытой лекции для Computer Science центра рассказываю о том, как можно математически подойти к определению понятия “количество информации”.

В классической статье А.Н. Колмогорова “Три подхода к определению понятия количества информации” (1965) рассматривают три способа это сделать:

  • комбинаторный (информация по Хартли),

  • вероятностный (энтропия Шеннона),

  • алгоритмический (колмогоровская сложность).

Мы будем следовать этому плану.

Комбинаторный подход: информация по Хартли

Мы начнём самого простого и естественного подхода, предложенного Хартли в 1928 году.

Пусть задано некоторое конечное множество A. Количеством информации в A будем называть chi(A) = log_2|A|.

Можно интерпретировать это определение следующим образом: нам нужно chi(A) битов для описания элемента из A.

Почему мы используем биты? Можно использовать и другие единицы измерения, например, триты или байты, но тогда нужно изменить основание логарифма на 3 или 256, соответственно. В дальшейшем все логарифмы будут по основанию 2.

Этого определения уже достаточно для того, чтобы измерить количество информации в некотором сообщении. Пусть про xin A стало известно, что xin B. Теперь нам достаточно chi(Acap B) = log_2 |Acap B| битов для описания x, таким образом нам сообщили chi(A) - chi(Acap B) битов информации.

Пример

Загадано целое число x от 1 до 1000. Нам сообщили, что x делится на 6. Сколько информации нам сообщили?

Воспользуемся рассуждением выше.

log_2 1000 - log_2 166 = log_2 frac{1000}{166} approx 2.59 text{битов.}

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

Можно ещё сказать, что сообщение, уменшающее пространство поиска в alphaраз приносит log_2 alpha битов информации. В данном примере пространство поиска уменьшилось в 1000/166 раз.

Интересно, что одного этого определения уже достаточно для того, чтобы решать довольно нетривиальные задачи.

Применение: цена информации

Загадано целое число xот 1 до n. Разрешается задавать любые вопросы на ДА/НЕТ. Если ответ на вопрос “ДА”, то мы должны заплатить рубль, если ответ “НЕТ” — два рубля. Сколько нужно заплатить для отгадывания числа x?

Любой вопрос можно сформулировать как вопрос о принадлежности некоторому множеству, поэтому мы будем считать, что все вопросы имеют вид “xin T?” для некоторого множества T.

Каким образом нужно задавать вопросы? Нам бы хотелось, чтобы вне зависимости от ответа цена за бит информации была постоянной. Другими словами, в случае ответа “НЕТ” и заплатив два рубля мы должны узнать в два больше информации, чем при ответе “ДА”. Давайте запишем это формально.

Потребуем, чтобы

2cdot(log |X| - log|X cap T|) = log |X| - log|Xcapoverline T|.

Пусть |X cap T| = alpha|X|, тогда |Xcapoverline T| = (1 - alpha)|X|. Подставляем и получаем, что

2log (1/alpha) = log (1/(1-alpha)).

Это эквивалентно квадратному уравнению alpha^2 = 1 - alpha. Положительный корень этого уравнения alpha=(sqrt 5 - 1) / 2. Таким образом, при любом ответе мы заплатим c = 1/log(1/alpha)approx 1.44 рублей за бит информации, а в сумме мы заплатим примерноclog nрублей (с точностью до округления).

Осталось понять, как выбирать такие множества T. Будем выбирать в качестве T непрерывные отрезки прямой. Пусть нам известно, что x принадлежит отрезку [a,b] (изначально это отрезок [1,n]). В следующего множества T возмём отрезок [a, a+ alphacdot(b-a)], гдеalpha=(sqrt 5 - 1) / 2. Тогда за каждый заплаченный рубль текущий отрезок будет уменьшаться в 1/alpha^2 = 1/(1-alpha) раз. Когда длина отрезка станет меньше единицы, мы однозначно определим x. Поэтому цена отгадывания не будет превосходить

clog((n-1)/alpha^2) = clog(n-1) - 2clog alpha = clog(n-1) + 2.

Приведённое рассуждение доказывает только верхнюю оценку. Можно доказать и нижнюю оценку: для любого способа задавать вопросы будет такое число x, для отгадывания которого придётся заплатить не менее clog (n-1)рублей.

Вероятностный подход: энтропия Шеннона

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

Пусть задана случайная величина X, принимающая k различных значений с вероятностями p_1,p_2,dotsc,p_k. Энтропия Шеннона случайной величины X определяется как

H(X) = sum_{i=1}^k p_icdotlogfrac1p_i.

(По непрерывности тут нужно доопределить 0cdot logfrac10 = 0.)

Энтропия Шеннона оценивает среднее количество информации (математическое ожидание), которое содержится в значениях случайной величины.

При первом взгляде на это определение, может показаться совершенно непонятно откуда оно берётся. Шеннон подошёл к этой задаче чисто математически: сформулировал требования к функции и доказал, что это единственная функция, удовлетворяющая сформулированным требованиям.

Я попробую объяснить происхождение этой формулы как обобщение информации по Хартли. Нам бы хотелось, чтобы это определение согласовывалось с определением Хартли, т.е. должны выполняться следующие “граничные условия”:

Будем искать H(alpha) в виде математического ожидания количества информации, которую мы получаем от каждого возможного значения X.

H(X) = sum_i p_icdot text{(информация в событии $X=a_i$)}.

Как оценить, сколько информации содержится в событии X = a_i? Пусть U — всё пространство элементарных исходов. Тогда событие X = a_i соответствует множеству элементарных исходов меры p_i. Если произошло событие X = a_i, то размер множества согласованных с этим событием элементарных исходов уменьшается с |U| до p_icdot|U|, т.е. событие X = a_i сообщает нам log|U| - log(p_icdot|U|) = log(1/p_i) битов информации. Тут мы пользуемся тем, что количество информации в сообщении, которое уменьшает размер пространство поиска в 1/p_iраз приносит log(1/p_i) битов информации.

Примеры

Свойства энтропии Шеннона

Для случайной величины X, принимающей k значений с вероятностями p_1,p_2,dotsc,p_k, выполняются следующие соотношения.

  • H(X) ge 0.

  • H(X) = 0 iff распределение X вырождено.

  • H(X) le log k.

  • H(X) = log k iff распределение X равномерно.

Чем распределение ближе к равномерному, тем больше энтропия Шеннона.

Энтропия пары

Понятие энтропии Шеннона можно обобщить для пары случайных величин. Аналогично это обощается для тройки, четвёрки и т.д.

Пусть совместно распределённые случайные величины X и Y принимают значения a_1,a_2,dotsc,a_k и b_1,b_2,dotsc,b_m, соответственно. Энтропия пары случайных величин X и Y определяется следующим соотношением:

H(X,Y) = sum_{i=1}^ksum_{j=1}^mPr[X = a_i, Y=b_j]cdot logfrac{1}{Pr[X = a_i, Y = b_j]}.

Примеры

Рассмотрим эксперимент с выбрасыванием двух игральных кубиков — синего и красного.

Свойства энтропии Шеннона пары случайных величин

Для энтропии пары выполняются следующие свойства.

Условная энтропия Шеннона

Теперь давайте научимся вычислять условную энтропию одной случайной величины относительно другой.

Условная энтропия X относительно Y определяется следующим соотношением:

H(Xmid Y) = H(X,Y) - H(Y).

Примеры

Рассмотрим снова примеры про два игральных кубика.

Свойства условной энтропии

Условная энтропия обладает следующими свойствами

Взаимная информация

Ещё одна информационная величина, которую мы введём в этом разделе — это взаимная информация двух случайных величин.

Информация в X о величине Y (взаимная информация случайных величин X и Y) определяется следующим соотношением

I(X:Y) = H(Y) - H(Ymid X).

Примеры

И снова обратимся к примерам с двумя игральными кубиками.

Свойства взаимной информации

Выполняются следующие соотношения.

  • I(X:Y) = I(Y:X). Т.е. определение взаимной информации симметрично и его можно переписать так:

I(X:Y) = H(X) - H(Xmid Y).

  • Или так: I(X:Y) = H(X) + H(Y) - H(X,Y).

  • I(X:Y) le H(X) и I(X:Y) le H(Y).

  • I(X:X) = H(X).

  • I(X:Y)ge 0.

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

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

Пусть X, Y и Z совместно распределены. Информация в X о Y при условии Z определяется следующим соотношением:

I(X:Ymid Z) = H(Ymid Z) -  H(Ymid X,Z).

Свойства такие же как и обычной взаимной информации, нужно только добавить соответствующее условие ко всем членам.

Всё, что мы успели определить можно удобно проиллюстрировать при помощи трёх кругов Эйлера.

Из этой иллюстрации можно вывести все определения и соотношения на информационные величины.

Мы не будем продолжать дальше и рассматривать четыре случайные величины по трём причинам. Во-первых, рисовать четыре круга Эйлера со всеми возможными областями — это непросто. Во-вторых, для двух и трёх случайных величин почти все возможные соотношения можно вывести из кругов Эйлера, а для четырёх случайных величин это уже не так. И в третьих, уже для трёх случайных величин возникают неприятные эффекты, демонстрирующие, что дальше будет хуже.

Рассмотрим треугольник в пересечении всех трёх кругов H(X), H(Y) и H(Z). Этот треугольник соответствуют взаимной информации трёх случайных величин I(X:Y:Z). Проблема с этой информационной величиной заключается в том, что ей не удаётся придать какой-то “физический” смысл. Более того, в отличие от всех остальных величин на картинке I(X:Y:Z) может быть отрицательной!

Рассмотрим пример трёх случайных величин равномерно распределённых на {0,1}. Пусть X и Y будут независимы, а Z=Xoplus Y. Легко проверить, что H(X)=H(Y)=H(Z)=1. При этом I(X:Y) = I(Y:Z) = I(Z:X) = 0. В то же время H(Xmid Y,Z) = H(Ymid X,Z) = H(Zmid X,Y) = 0. Получается следующая картинка.

Мы знаем, что a+c+d=a+d+b=c+d+b=1. При этом a+d=c+d=b+d=0. Получается, что a=b=c=1, а d=-1, т.е. для таких случайных величинI(X:Y:Z) = -1.

Применение энтропии Шеннона: кодирование

В этом разделе мы обсудим, как энтропия Шеннона возникает в теории кодирования. Будем рассматривать коды, которые кодируют каждый символ по отдельности.

Пусть задан алфавит Sigma. Код — это отображение из Sigma в {0,1}^*. Код C называется однозначно декодируемым, если любое сообщение, полученное применением C к символам некоторого текста, декодируется однозначно.

Код называется префиксным (prefix-free), если нет двух символов alpha и beta таких, что C(alpha) является префиксом C(beta).

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

Теорема [Шеннон]. Для любого однозначно декодируемого кода существует префиксный код с теми же длинами кодов символов.

Таким образом для изучения однозначно декодируемых кодов достаточно рассматривать только префиксные коды.

Задача об оптимальном кодировании.
Дан текст T = langle a_1,a_2,dotsc,a_nrangle. Нужно найти такой код C, что

sum_{i=1}^n |C(a_i)| to min.

Пусть Sigma = {alpha_1,alpha_2,dotsc,alpha_k}. Обозначим через f_i частоту, с которой символ alpha_i встречается в T. Тогда выражение выше можно переписать как

nsum_{i=1}^k f_icdot |C(alpha_i)| to min.

Следующая теорема могла встречаться вам в курсе алгоритмов.

Теорема [Хаффман]. Код Хаффмана, построенный по f_1,f_2,dotsc,f_k, является оптимальным префиксным кодом.

Алгоритм Хаффмана по набору частот эффективно строит оптимальный код для задачи оптимального кодирования.

Связь с энтропией

Имеют место две следующие оценки.

Теорема [Шеннон]. Для любого однозначно декодируемого кода выполняется

sum_{i=1}^k f_icdot|C(alpha_i)|ge sum_{i=1}^n f_icdot logfrac1{f_i}.

Теорема [Шеннон]. Для любых значений {f_1,f_2,dotsc,f_k} существует префиксный код C, такой что

sum_{i=1}^n f_icdot|C(alpha_i)|le sum_{i=1}^n f_icdot logfrac1{f_i} + 1.

Рассмотрим случайную величину X, равномерно распределённую на символах текста T. Получим, что H(X) = f_icdot logfrac1{f_i}. Таким образом, эти две теоремы задают оценку на среднюю длину кода символа при оптимальном кодировании, т.е. и для кодирования Хаффмана.

H(X) le sum_{i=1}^n f_icdot|C(alpha_i)|le H(X) + 1.

Следовательно, длину кода Хаффмана текста T можно оценить, как

nH(X) le |C(T)|le n(H(X) + 1).

Применение энтропии Шеннона: шифрования с закрытым ключом

Рассмотрим простейшую схему шифрования с закрытым ключом. Шифрование сообщения m с ключом шифрования k выполняется при помощи алгоритма шифрования E. В результате получается шифрограмма c = E(k, m). Зная k получатель шифрограммы восстанавливает исходное сообщение m: m = D(k, c).

Мы будем анализировать эту схему с помощью аппарата энтропии Шеннона. Пусть m и k являются случайными величинами. Противник не знает m и k, но знает c, которая так же является случайной величиной.

Для совершенной схемы шифрования (perfect secrecy) выполняются следующие соотношения:

  1. H(cmid k, m) = 0, т.е. шифрограмма однозначно определяется по ключу и сообщению.

  2. H(mmid k, c) = 0, т.е. исходное сообщение однозначно восстанавливается по шифрограмме и ключу.

  3. I(c : m) = 0, т.е. в отсутствие ключа из шифрограммы нельзя получить никакой информации о пересылаемом сообщении.

Теорема [Шеннон]. H(k)ge H(m), даже если условие H(cmid k,m) = 0 нарушается (т.е. алгоритм E использует случайные биты).

Эта теорема утверждает, что для совершенной схемы шифрования длина ключа должна быть не менее длины сообщения. Другими словами, если вы хотите зашифровать и передать своему знакомому файл размера 1Гб, то для этого вы заранее должны встретиться и обменяться закрытым ключом размера не менее 1Гб. И конечно, этот ключ можно использовать только однажды. Таким образом, самая оптимальная совершенная схема шифрования — это “одноразовый блокнот”, в котором длина ключа совпадает с длиной сообщения.

Если же вы используете ключ, который короче пересылаемого сообщения, то шифрограмма раскрывает некоторую информацию о зашифрованном сообщении. Причём количество этой информации можно оценить, как разницу между энтропией сообщения и энтропией ключа. Если вы используете пароль из 10 символов при пересылке файла размера 1Гб, то вы разглашаете примерно 1Гб – 10 байт.

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

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

Доказательство. Нарисуем картинку для трёх случайных величин и отметим то, что нам известно.

  • H(mmid k, c) = 0.

  • I(c:m) = 0, следовательно x + w = 0, а значит x = -w.

  • I(c:k)ge 0 (по свойству взаимной информации), следовательно w + yge 0, а значит y ge -w = x.

  • uge 0. Таким образом,

H(k) = u + z + w + y ge u + z + w + x = u + H(m)ge H(m).

В доказательстве мы действительно не воспользовались тем, что H(cmid k,m) = 0.

Алгоритмический подход: колмогоровская сложность

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

Внимание. До этого момента я старался следить за математической строгостью формулировок. Для того, чтобы двигаться дальше в том же ключе, мне потребовалось бы предположить, что читатель неплохо знаком с математической логикой и теорией вычислимости. Я пойду более простым путём и просто буду махать руками, заметая под ковёр некоторые подробности. Однако, все утверждения и рассуждения дальше можно математически строго сформулировать и доказать.

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

Сложностью K_F(x) строки x относительно языка программирования F называется длина кратчайшей программы, которая выводит x.

Таким образом сложность “Войны и мира” относительноя языка Python — это длина кратчайшей программы на Python, которая печатает текст “Войны и мира”. Естественным образом сложность отсортированной версии “Войны и мира” относительно языка Python получится значительно меньше, т.к. её можно предварительно закодировать при помощи RLE.

Сравнение языков программирования

Дальше нам потребуется научиться любимой забаве всех программистов — сравнению языков программирования.

Будем говорить, что язык F не хуже языка программирования G и обозначать Fprec G, если существует константа c_G такая, что для для всех xin{0,1}^* выполняется K_F(x) le K_G(x) + c_G.

Исходя из этого определения получается, что язык Python не хуже (!) этого вашего Haskell! И я это докажу. В качестве константы c_text{Haskell}мы возьмём длину реализации интепретатора Haskell на Python. Таким образом, любая программа на Haskell переделывается в программу на Python просто дописыванием к ней интерпретатора Haskell на Python.

Соломонов и Колмогоров пошли дальше и доказали существования оптимального языка программирования.

Теорема [Соломонова-Колмогорова]. Существует способ описания (язык программирования) U такой, что для любого другого способа описания F выполняется Uprec F.

И да, некоторые уже наверное догадались, что U — это JavaScript. Или любой другой Тьюринг полный язык программирования.

Это приводит нас к следующему определению, предложенному Колмогоровым в 1965 году.

Колмогоровской сложностью строки x будем называть её сложность относительно оптимального способа описания Uи будем обозначать K(x) = K_U(x).

Важно понимать, что при разных выборах оптимального языка программирования Uколмогоровская сложность будет отличаться, но только на константу. Для любых двух оптимальных языков программирования F_1 и F_2 выполняется F_1prec F_2 и F_2prec F_1, т.е. существует такая константа c, что |K_{F_1} - K_{F_2}| le c.Это объясняет, почему в этой науке аддитивные константы принято игнорировать.

При этом для конкретной строки и конкретного выбора колмогоровская сложность определена однозначно.

Свойства колмогоровской сложности

Начнём с простых свойств. Колмогоровская сложность обладает следующими свойствами.

Первое свойство выполняется потому, что мы всегда можем зашить строку в саму программу. Второе свойство верно, т.к. из программы, выводящей строку x, легко сделать программу, которая выводит эту строку дважды.

Примеры

Несжимаемые строки

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

В терминах колмогоровской сложности это можно сформулировать так.

Вопрос. Существует ли такая длина строки n, что для любой строки xin{0,1}^n колмогоровская сложность x меньше n?

Следующая теорема даёт отрицательный ответ на этот вопрос.

Теорема. Для любого n существует xin{0,1}^n такой, что K(x)ge n.

Доказательство. Битовых строк длины n всего 2^n. Число строк сложности меньше n не превосходит число программ длины меньше n, т.е. таких программ не больше чем

1+2+dotsb +2^{n-1} = 2^n - 1 < 2^n.

Таким образом, для какой-то строки гарантированно не хватит программы.

Верна и более сильная теорема.

Теорема. Существует c > 0 такое, что для 99% слов длины n верно

n - c le K(x) le n + c .

Другими словами, почти все строки длины n имеют почти максимальную сложность.

Колмогоровская сложность: вычислимость

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

Теорема. Не существует программы, которая по двоичной записи числа n выводит строку x, такую что K(x)ge n.

Эта теорема говорит о том, что не существует программы-генератора, которая умела бы генерировать сложные строки по запросу.

Доказательство. Проведём доказетельство от противного. Пусть такая программа P существует и P(n) = x. Тогда с одной стороны сложность x не меньше n, а с другой стороны мы можем описать x при помощи log n битов и кода программыP.

nle K(x)le K_P(x) + c_P le lceillog nrceil +  c_P.

Это приводит нас к противоречию, т.к. при достаточно больших значениях n неизбежно станет больше, чем lceillog nrceil +c_P.

Как следствие мы получаем невычислимость колмогоровской сложности.

Следствие. Отображение xto K(x) не является вычислимым.

Опять же, предположим, что это нет так и существует программа Q, которая по строку вычисляет её колмогоровскую сложность. Тогда на основе программы Qможно реализовать программу Pиз теоремы выше: она будет перебирать все строки длины не более nи находить лексикографически первую, для которой сложность будет не меньше n. А мы уже доказали, что такой программы не существует.

Связь с энтропией Шеннона

Теорема. Пусть x = langle{011010010dotso 10110}rangle длины n содержит pcdot n единиц и (1-p)cdot n нулей, тогда

K(x)le left(pcdotlogfrac1p + (1-p)cdotlogfrac{1}{1-p}right)cdot n        + O(log n).

Я надеюсь, что вы уже узнали энтропию Шеннона для случайной величины с двумя значениями с вероятностями p и 1-p.

Для колмогоровской сложности можно проделать весь путь, который мы проделали для энтропии Шеннона: определить условную колмогоровскую сложность, сложность пары строк, взаимную информацию и условную взаимную информацию и т.д. При этом формулы будут повторять формулы для энтропии Шеннона с точностью до O(log n). Однако это тема для отдельной статьи.

Применение колмогоровской сложности: бесконечность множества простых чисел

Начнём с довольно игрушечного применения. С помощью колмогоровской сложности мы докажем следующую теорему, знакомую нам со школы.

Теорема. Простых чисел бесконечно много.

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

Доказательство. Проведём доказательство от обратного. Пусть существует всего m простых чисел: p_1,p_2,dotsc,p_m. Тогда любое натуральное x раскладывается на степени простых:

x = p_1^{k_1}cdot p_2^{k_2}cdotdotsmcdot p_m^{k_m},

т.е. определяется набором степеней k_1,k_2,dotsc,k_m. Каждое k_ilelog x, т.е. задаётся O(log log x) битами. Поэтому любое xможно задать при помощи O(loglog x) битов (помним, что m — это константа).

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

n le K(x) le O(loglog x) = O(log n).

Противоречие.

Применение колмогоровской сложности: алгоритмическая случайность

Колмогоровская сложность позволяет решить следующую проблему из классической теории вероятностей.

Пусть в лаборатории живёт обезьянка, которую научили печатать на печатной машинке так, что каждую кнопку она нажимает с одинаковой вероятность. Вам предлагается посмотреть на лист печатного текста и сказать, верите ли вы, что его напечатала эта обезьянка. Вы смотрите на лист и видите, что это первая страница “Гамлета” Шекспира. Поверите ли вы? Очевидно, что нет. Хорошо, а если это не Шекспир, а, скажем, текст детектива Дарьи Донцовой? Скорей всего тоже не поверите. А если просто какой-то набор русских слов? Опять же, очень сомневаюсь, что вы поверите.

Внимание, вопрос. А как объяснить, почему вы не верите? Давайте для простоты считать, что на странице помещается 2000 знаков и всего на машинке есть 80 знаков. Вы можете резонно заметить, что вероятность того, что обезьянка случайным образом породила текст “Гамлета” порядка 1/80^{2000}, что астрономически мало. Это верно.

Теперь предположим, что вам показали текст, который вас устроил (он с вашей точки зрения будет похож на “случайный”). Но ведь вероятность его появления тоже будет порядка 1/80^{2000}. Как же вы определяете, что один текст выглядит “случайным”, а другой — не выглядит?

Колмогоровская сложность позволяет дать формальный ответ на этот вопрос. Если у текста отстутствует короткое описание (т.е. в нём нет каких-то закономерностей, которые можно было бы использовать для сжатия), то такую строку можно назвать случайной. И как мы увидели выше почти все строки имеют большую колмогоровскую сложность. Поэтому, когда вы видите строку с закономерностями, т.е. маленькой колмогоровской сложности, то это соответствует очень редкому событию. В противоположность наблюдению строки без закономерностей. Вероятность увидеть строку без закономерностей близка к 1.

Это обобщается на случай бесконечных последовательностей. Пусть bar x = x_1x_2x_3dotso x_ndotso. Как определить понятие случайной последовательности?

(неформальное определение)
Последовательность случайна по Мартину–Лёфу, если каждый её префикс является несжимаемым.

Оказывается, что это очень хорошее определение случайных последовательностей, т.к. оно обладает ожидаемыми свойствами.

Свойства случайных последовательностей

  • Почти все последовательности являются случайными по Мартину–Лёфу, а мера неслучайных равна 0.

  • Всякая случайная по Мартину-Лёфу последовательность невычислима.

  • Если bar x случайная по Мартин-Лёфу, то

lim_{ntoinfty} frac{text{число единиц в префиксе длины n}}{n} = frac12.

Заключение

Если вам интересно изучить эту тему подробнее, то я рекомендую обратиться к следующим источникам.

  • Верещагин Н.К., Щепин Е.В. Информация, кодирование и предсказание. МЦНМО. (нет в свободном доступе, но pdf продаётся за копейки)

  • В.А. Успенский, А.Х. Шень, Н.К. Верещагин. Колмогоровская сложность и алгоритмическая случайность.

  • Курс “Введение в теорию информации” А.Е. Ромащенко в Computer Science клубе.

Если вам интересны подобные материалы, подписывайтесь в соцсетях на CS клуб и CS центр, а так же на наши каналы на youtube: CS клуб, CS центр.

Информатика

7 класс

Урок № 6

Единицы измерения информации

Перечень вопросов, рассматриваемых в теме:

  • Алфавитный подход к измерению информации.
  • Наименьшая единица измерения информации.
  • Информационный вес одного символа алфавита и информационный объём всего сообщения.
  • Единицы измерения информации.
  • Задачи по теме урока.

Тезаурус:

Каждый символ информационного сообщения несёт фиксированное количество информации.

Единицей измерения количества информации является бит – это наименьшаяединица.

1 байт = 8 бит

1 Кб (килобайт) = 1024 байта= 210байтов

1 Мб (мегабайт) = 1024 Кб = 210Кб

1 Гб (гигабайт) = 1024 Мб = 210 Мб

1 Тб (терабайт) =1024 Гб = 210 Гб

Формулы, которые используются при решении типовых задач:

Информационный вес символа алфавита и мощность алфавита связаны между собой соотношением: N = 2i.

Информационный объём сообщения определяется по формуле:

I = К · i,

I – объём информации в сообщении;

К – количество символов в сообщении;

i – информационный вес одного символа.

Основная литература:

  1. Босова Л. Л. Информатика: 7 класс. // Босова Л. Л., Босова А. Ю. – М.: БИНОМ, 2017. – 226 с.

Дополнительная литература:

  1. Босова Л. Л. Информатика: 7–9 классы. Методическое пособие. // Босова Л. Л., Босова А. Ю., Анатольев А. В., Аквилянов Н.А. – М.: БИНОМ, 2019. – 512 с.
  2. Босова Л. Л. Информатика. Рабочая тетрадь для 7 класса. Ч 1. // Босова Л. Л., Босова А. Ю. – М.: БИНОМ, 2019. – 160 с.
  3. Босова Л. Л. Информатика. Рабочая тетрадь для 7 класса. Ч 2. // Босова Л. Л., Босова А. Ю. – М.: БИНОМ, 2019. – 160 с.
  4. Гейн А. Г. Информатика: 7 класс. // Гейн А. Г., Юнерман Н. А., Гейн А.А. – М.: Просвещение, 2012. – 198 с.

Теоретический материал для самостоятельного изучения.

Любое сообщение несёт некоторое количество информации. Как же его измерить?

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

Сегодня на уроке мы узнаем, чему равен информационный вес одного символа и научимся определять информационный объём сообщения.

Что же такое символ в компьютере? Символом в компьютере является любая буква, цифра, знак препинания, специальный символ и прочее, что можно ввести с помощью клавиатуры. Но компьютер не понимает человеческий язык, он каждый символ кодирует. Вся информация в компьютере представляется в виде нулей и единичек. И вот эти нули и единички называются битом.

Информационный вес символа двоичного алфавита принят за минимальную единицу измерения информации и называется один бит.

Алфавит любого понятного нам языка можно заменить двоичным алфавитом. При этом мощность исходного алфавита связана с разрядностью двоичного кода соотношением: N = 2i.

Эту формулу можно применять для вычисления информационного веса одного символа любого произвольного алфавита.

Рассмотрим пример:

Алфавит древнего племени содержит 16 символов. Определите информационный вес одного символа этого алфавита.

Составим краткую запись условия задачи и решим её:

Дано:

N=16, i = ?

Решение:

N = 2i

16 = 2i, 24 = 2i, т. е. i = 4

Ответ: i = 4 бита.

Информационный вес одного символа этого алфавита составляет 4 бита.

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

Математически это произведение записывается так: I = К · i.

Например: сообщение, записанное буквами 32-символьного алфавита, содержит 180 символов. Какое количество информации оно несёт?

Дано:

N = 32,

K = 180,

I= ?

Решение:

I = К · i,

N = 2i

32 = 2i, 25 = 2 i, т.о. i = 5,

I = 180 · 5 = 900 бит.

Ответ: I = 900 бит.

Итак, информационный вес всего сообщения равен 900 бит.

В алфавитном подходе не учитывается содержание самого сообщения. Чтобы вычислить объём содержания в сообщении, нужно знать количество символов в сообщении, информационный вес одного символа и мощность алфавита. То есть, чтобы определить информационный вес сообщения: «сегодня хорошая погода», нужно сосчитать количество символов в этом сообщении и умножить это число на восемь.

I = 23 · 8 = 184 бита.

Значит, сообщение весит 184 бита.

Как и в математике, в информатике тоже есть кратные единицы измерения информации. Так, величина равная восьми битам, называется байтом.

Бит и байт – это мелкие единицы измерения. На практике для измерения информационных объёмов используют более крупные единицы: килобайт, мегабайт, гигабайт и другие.

1 байт = 8 бит

1 Кб (килобайт) = 1024 байта= 210байтов

1 Мб (мегабайт) = 1024 Кб = 210Кб

1 Гб (гигабайт) = 1024 Мб = 210 Мб

1 Тб (терабайт) =1024 Гб = 210 Гб

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

Материал для углубленного изучения темы.

Как текстовая информация выглядит в памяти компьютера.

Набирая текст на клавиатуре, мы видим привычные для нас знаки (цифры, буквы и т.д.). В оперативную память компьютера они попадают только в виде двоичного кода. Двоичный код каждого символа, выглядит восьмизначным числом, например 00111111. Теперь возникает вопрос, какой именно восьмизначный двоичный код поставить в соответствие каждому символу?

Все символы компьютерного алфавита пронумерованы от 0 до 255. Каждому номеру соответствует восьмиразрядный двоичный код от 00000000 до 11111111. Этот код ‑ просто порядковый номер символа в двоичной системе счисления.

Таблица, в которой всем символам компьютерного алфавита поставлены в соответствие порядковые номера, называется таблицей кодировки.Таблица для кодировки – это «шпаргалка», в которой указаны символы алфавита в соответствии порядковому номеру. Для разных типов компьютеров используются различные таблицы кодировки.

Таблица ASCII (или Аски), стала международным стандартом для персональных компьютеров. Она имеет две части.

В этой таблице латинские буквы (прописные и строчные) располагаются в алфавитном порядке. Расположение цифр также упорядочено по возрастанию значений. Это правило соблюдается и в других таблицах кодировки и называется принципом последовательного кодирования алфавитов. Благодаря этому понятие «алфавитный порядок» сохраняется и в машинном представлении символьной информации. Для русского алфавита принцип последовательного кодирования соблюдается не всегда.

Запишем, например, внутреннее представление слова «file». В памяти компьютера оно займет 4 байта со следующим содержанием:

01100110 01101001 01101100 01100101.

А теперь попробуем решить обратную задачу. Какое слово записано следующим двоичным кодом:

01100100 01101001 01110011 01101011?

В таблице 2 приведен один из вариантов второй половины кодовой таблицы АSСII, который называется альтернативной кодировкой. Видно, что в ней для букв русского алфавита соблюдается принцип последовательного кодирования.

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

Из памяти же компьютера текст может быть выведен на экран или на печать в символьной форме.

Сейчас используют целых пять систем кодировок русского алфавита (КОИ8-Р, Windows, MS-DOS, Macintosh и ISO). Из-за количества систем кодировок и отсутствия одного стандарта, очень часто возникают недоразумения с переносом русского текста в компьютерный его вид. Поэтому, всегда нужно уточнять, какая система кодирования установлена на компьютере.

Разбор решения заданий тренировочного модуля

№1. Определите информационный вес символа в сообщении, если мощность алфавита равна 32?

Варианты ответов:

3

5

7

9

Решение:

Информационный вес символа алфавита и мощность алфавита связаны между собой соотношением: N = 2i.

32 = 2i, 32 – это 25, следовательно, i =5 битов.

Ответ: 5 битов.

№2. Выразите в килобайтах 216 байтов.

Решение:

216 можно представить как 26 · 210.

26 = 64, а 210 байт – это 1 Кб. Значит, 64 · 1 = 64 Кб.

Ответ: 64 Кб.

№3. Тип задания: выделение цветом

8х = 32 Кб, найдите х.

Варианты ответов:

3

4

5

6

Решение:

8 можно представить как 23. А 32 Кб переведём в биты.

Получаем 2=32 · 1024 ·8.

Или 2 = 25 · 210 · 23.

2 = 218.

3х = 18, значит, х=6.

Ответ: 6.

Как следует из рис. 5.4,б, частота следования двоичных символов («единиц» и «нулей») в цифровом сигнале, называемая тактовой частотой fТ ,

равна

fT =1/ TT =1/(TД / m) = f Д m , Гц,

(5.4)

где TT =TД / m – тактовый период, который равен также длительности τ0

элементарной посылки TT =τ0 . Таким

образом, при передаче телефонного

сообщения ( FВ =3,4 кГц)

в цифровом виде, для которого f Д =8 кГц (по

международным нормам),

M = 256,

получается цифровой сигнал с

параметрами: TД =125 мкс,

m =8 , TT =τ0 =15,625 мкс и частотой следования

двоичных символов (посылок) fслед. т.е. тактовой частотой равной:

fсл. тлф = f т. тлф = f Д m =8 8 = 64

кГц.

Вернемся снова к информации, чтобы определить ее количественную меру. Принимая сообщение о каком-либо событии, мы меняем свои знания о нем. Однако определить, сколько информации содержится в сообщении, в общем случае довольно затруднительно, так как одно и то же сообщение может давать одному потребителю много информации, а другому – мало.

Чтобы обойти эти трудности, в теории передачи сообщений предложена количественная мера для подсчета числа единиц информации, которая не связана с конкретным содержанием сообщения, а отражает лишь степень ее «неожиданности» (неопределенности).

Количество информации в сообщении принято оценивать по его вероятности. Так, весьма вероятное сообщение содержит мало нового и поэтому несет мало информации; маловероятное же сообщение является неожиданным и поэтому содержит много информации.

В 40-х годах ХХ века Клод Шеннон предложил количество информации в отдельно взятом сообщении определять величиной, обратной вероятности сообщения, вычисленной в логарифмических единицах:

J(a) =logk

1

=−logk p(a) ,

(5.5)

p(a)

где p(a) – вероятность сообщения a ; k – основание логарифма.

45

При p(a) =1 количество информации равно нулю, т.е. сообщение об

известном событии никакой информации не несет.

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

Основание логарифма чаще всего принимают равным двум ( k = 2 ), тогда количество информации, содержащееся в сообщении, выражается в двоичных единицах:

J(a) =−log2 p(a).

Двоичную единицу обычно называют битом – от binary digit (двоичная цифра).

Совокупность всех возможных сообщений и вероятностей их появления образуют ансамбль сообщений. Если ансамбль состоит из двух сообщений a1 и

a2 (например, вида «да» и «нет» или 0 и 1), которые являются не зависимыми и равновероятными, т.е. p(a1) = p(a2 ) =1/ 2 , то каждое из сообщений несет одну двоичную единицу (один бит) информации:

J =−log2 p(a1) =−log2 p(a2 ) =−log2 0,5 =1 бит.

Таким образом, 1 бит информации уменьшает наше незнание (неопределенность) о чем-либо ровно в 2 раза. Это имеет место только в том случае, если вероятности событий равновероятны.

Бит – это фундаментальная единица для всех цифровых систем. Определим количество информации в слове из n букв, если алфавит

состоит из m букв (32 в русском алфавите) и вероятности букв одинаковы, а сами буквы следуют независимо друг от друга. Количество информации при передаче одной буквы J(ai ) =−log2p(ai ). Так как все буквы равновероятны, то

p(ai ) =1/ m и количество информации, содержащееся в любой букве,

J(ai ) =−log21/ m =log2m =log232 =5 бит/букву.

Буквы следуют независимо, поэтому количество информации в слове из n

букв

n

JСЛ =J(ai ) =nlog2 m.

(5.6)

i=1

Например, для слова из семи букв русского алфавита ( n =7, m =32 ) количество информации JСЛ =35 бит.

Часто возникает потребность оценивать информационные свойства источника сообщений в целом. Такой характеристикой является среднее

46

количество информации, приходящееся на одно сообщение – энтропия источника сообщений.

Выше рассмотрен пример, когда появление разных букв было равновероятным. Однако в реальных условиях буквы, как правило, имеют разную вероятность. Например, буквы о, е, а встречаются в тексте сравнительно часто, а щ, ы, ъ – редко. Так как вероятности сообщений неодинаковы, они несут различное количество информации J(ai ). Менее

вероятные события несут большее количество информации и наоборот.

На основании изложенного, можно записать формулу Шеннона для расчета среднего количества информации от наступления любого из m событий

m

H = p(ai )log2 (1/ p(ai )), бит.

(5.7)

i =1

При равновероятности событий получается частный случай

I = H = log2 m , бит.

Именно так в 1928 г. Р. Хартли предложил оценивать количество информации.

Приведем такой пример. Сколько бит информации необходимо получить нам от любого человека, чтобы установить день его рождения, задавая ему правильно сконструированные вопросы и получая ответы типа «да» и «нет»? Как следует из предыдущего материала, каждый такой ответ будет сообщать нам 1 бит информации только в том случае, если вопросы поставлены так, что ответы уменьшают наше незнание в 2 раза. Воспользуемся приведенным выше выражением (учитывая, что число дней в году m =365 и все они

равновероятны как даты рождения) и получим I = log2 m = log2 365 ; 2х =365.

Отсюда следует, что 8 вопросов и столько же ответов, т.е. 8 бит недостаточно (28=256), а 9 – избыточны (29=512). Поэтому ответ очевиден – 9 бит. Попробуйте задать правильно 9 вопросов и убедиться, что с вероятностью 0,5 достаточно будет 8 вопросов и такой же вероятностью потребуется 9 вопросов и ответов, т.е. 9 бит.

Приведенные выражения справедливы для источника с независимыми сообщениями. Существует формулы определения энтропии для источников с зависимыми сообщениями. Примером такого источника может быть обычный текст, где появление той или иной буквы зависит от предыдущих буквенных сочетаний: так, после сочетания чт вероятность следования гласных о, е, и больше, чем согласных.

Любой источник зависимых сообщений обладает, как принято говорить, избыточностью. Это означает, что если источник создает последовательность сообщений с известной заранее статистической связью, то часть сообщений

47

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

Еще одной характеристикой источника сообщений является его производительность – среднее количество информации, создаваемое источником в единицу времени. Наибольшей производительностью обладает источник с максимальной энтропией.

5.4. Помехи и шумы

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

где k =1,38 1023 Вт/(Гц град) – постоянная Больцмана,

T – эквивалентная шумовая температура устройства (в градусах Кельвина),

fш – шумовая полоса в (Гц), примерно равная ширине полосы

пропускания устройства на уровне минус 3 дБ.

Интенсивность тепловых шумов остается постоянной в пределах очень широкой полосы частот – примерно 0…1012 Гц. Поэтому его называют белым шумом по аналогии с белым светом, энергия которого равномерно распределена по спектру. В активных приборах (лампах, полупроводниках, микросхемах) также возникают флуктуации (дробовой шум, генерации и рекомбинации носителей заряда). Приведенное выражение показывает, что мощность белого шума уменьшается при охлаждении схемы, устройства или его части (напр., конвертора приемной установки спутникового телевидения при недостаточной мощности принимаемого сигнала). Основные методы борьбы с ним являются косвенными – выбор формы сигнала, методов

48

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Набор символов знаковой системы (алфавит) можно рассматривать как различные возможные состояния (события).
Тогда, если считать, что появление символов в сообщении равновероятно, количество возможных событийN можно вычислить как N=2i
Количество информации в сообщении I можно подсчитать умножив количество символов K на информационный вес одного символа i
Итак, мы имеем формулы, необходимые для определения количества информации в алфавитном подходе:

Если к этим задачам добавить задачи на соотношение величин, записанных в разных единицах измерения, с использованием представления величин в виде степеней двойки мы получим 9 типов задач.
Рассмотрим задачи на все типы. Договоримся, что при переходе от одних единиц измерения информации к другим будем строить цепочку значений. Тогда уменьшается вероятность вычислительной ошибки.

Задача 1. Получено сообщение, информационный объем которого равен 32 битам. чему равен этот объем в байтах?

Решение: В одном байте 8 бит. 32:8=4
Ответ: 4 байта.

Задача 2. Объем информацинного сообщения 12582912 битов выразить в килобайтах и мегабайтах.

Решение: Поскольку 1Кбайт=1024 байт=1024*8 бит, то 12582912:(1024*8)=1536 Кбайт и
поскольку 1Мбайт=1024 Кбайт, то 1536:1024=1,5 Мбайт
Ответ:1536Кбайт и 1,5Мбайт.

Задача 3. Компьютер имеет оперативную память 512 Мб. Количество соответствующих этой величине бит больше:

1) 10 000 000 000бит 2) 8 000 000 000бит 3) 6 000 000 000бит 4) 4 000 000 000бит Решение: 512*1024*1024*8 бит=4294967296 бит.
Ответ: 4.

Задача 4. Определить количество битов в двух мегабайтах, используя для чисел только степени 2.
Решение: Поскольку 1байт=8битам=23битам, а 1Мбайт=210Кбайт=220байт=223бит. Отсюда, 2Мбайт=224бит.
Ответ: 224бит.

Задача 5. Сколько мегабайт информации содержит сообщение объемом 223бит?
Решение: Поскольку 1байт=8битам=23битам, то
223бит=223*223*23бит=210210байт=210Кбайт=1Мбайт.
Ответ: 1Мбайт

Задача 6. Один символ алфавита “весит” 4 бита. Сколько символов в этом алфавите?
Решение:
Дано:

i=4 По формуле N=2i находим N=24, N=16
Найти: N – ?  

Ответ: 16

Задача 7. Каждый символ алфавита записан с помощью 8 цифр двоичного кода. Сколько символов в этом алфавите?
Решение:
Дано:

i=8 По формуле N=2i находим N=28, N=256
Найти:N – ?  

Ответ: 256

Задача 8. Алфавит русского языка иногда оценивают в 32 буквы. Каков информационный вес одной буквы такого сокращенного русского алфавита?
Решение:
Дано:

N=32 По формуле N=2i находим 32=2i, 25=2i,i=5
Найти: i– ?  

Ответ: 5

Задача 9. Алфавит состоит из 100 символов. Какое количество информации несет один символ этого алфавита?
Решение:
Дано:

N=100 По формуле N=2i находим 32=2i, 25=2i,i=5
Найти: i– ?  

Ответ: 5

Задача 10. У племени “чичевоков” в алфавите 24 буквы и 8 цифр. Знаков препинания и арифметических знаков нет. Какое минимальное количество двоичных разрядов им необходимо для кодирования всех символов? Учтите, что слова надо отделять друг от друга!
Решение:
Дано:

N=24+8=32 По формуле N=2i находим 32=2i, 25=2i,i=5
Найти: i– ?  

Ответ: 5

Задача 11. Книга, набранная с помощью компьютера, содержит 150 страниц. На каждой странице — 40 строк, в каждой строке — 60 символов. Каков объем информации в книге? Ответ дайте в килобайтах и мегабайтах
Решение:
Дано:

K=360000 Определим количество символов в книге 150*40*60=360000. Один символ занимает один байт. По формуле I=K*iнаходим I=360000байт 360000:1024=351Кбайт=0,4Мбайт
Найти: I– ?  

Ответ: 351Кбайт или 0,4Мбайт

Задача 12. Информационный объем текста книги, набранной на компьютере с использованием кодировки Unicode, — 128 килобайт. Определить количество символов в тексте книги.
Решение:
Дано:

I=128Кбайт,i=2байт В кодировке Unicode один символ занимает 2 байта. Из формулыI=K*i выразимK=I/i,K=128*1024:2=65536
Найти: K– ?  

Ответ: 65536

Задача 13.Информационное сообщение объемом 1,5 Кб содержит 3072 символа. Определить информационный вес одного символа использованного алфавита
Решение:
Дано:

I=1,5Кбайт,K=3072 Из формулы I=K*i выразимi=I/K,i=1,5*1024*8:3072=4
Найти: i– ?  

Ответ: 4

Задача 14.Сообщение, записанное буквами из 64-символьного алфавита, содержит 20 символов. Какой объем информации оно несет?
Решение:
Дано:

N=64, K=20 По формуле N=2i находим 64=2i, 26=2i,i=6. По формуле I=K*i I=20*6=120
Найти: I– ?  

Ответ: 120бит

Задача 15. Сколько символов содержит сообщение, записанное с помощью 16-символьного алфавита, если его объем составил 1/16 часть мегабайта?
Решение:
Дано:

N=16, I=1/16 Мбайт По формуле N=2i находим 16=2i, 24=2i,i=4. Из формулы I=K*i выразим K=I/i, K=(1/16)*1024*1024*8/4=131072
Найти: K– ?  

Ответ: 131072

Задача 16. Объем сообщения, содержащего 2048 символов,составил 1/512 часть мегабайта. Каков размер алфавита, с помощью которого записано сообщение?
Решение:
Дано:

K=2048,I=1/512 Мбайт Из формулы I=K*i выразим i=I/K, i=(1/512)*1024*1024*8/2048=8. По формулеN=2iнаходим N=28=256
Найти: N– ?  

Ответ: 256

Задачи для самостоятельного решения:

  1. Каждый символ алфавита записывается с помощью 4 цифр двоичного кода. Сколько символов в этом алфавите?
  2. Алфавит для записи сообщений состоит из 32 символов, каков информационный вес одного символа? Не забудьте указать единицу измерения.
  3. Информационный объем текста, набранного на компьюте¬ре с использованием кодировки Unicode (каждый символ кодируется 16 битами), — 4 Кб. Определить количество символов в тексте.
  4. Объем информационного сообщения составляет 8192 бита. Выразить его в килобайтах.
  5. Сколько бит информации содержит сообщение объемом 4 Мб? Ответ дать в степенях 2.
  6. Сообщение, записанное буквами из 256-символьного ал¬фавита, содержит 256 символов. Какой объем информации оно несет в килобайтах?
  7. Сколько существует различных звуковых сигналов, состоящих из последовательностей коротких и длинных звонков. Длина каждого сигнала — 6 звонков.
  8. Метеорологическая станция ведет наблюдение за влажностью воздуха. Результатом одного измерения является целое число от 20 до 100%, которое записывается при помощи минимально возможного количества бит. Станция сделала 80 измерений. Определите информационный объем результатом наблюдений.
  9. Скорость передачи данных через ADSL-соединение равна 512000 бит/с. Через данное соединение передают файл размером 1500 Кб. Определите время передачи файла в секундах.
  10. Определите скорость работы модема, если за 256 с он может передать растровое изображение размером 640х480 пикселей. На каждый пиксель приходится 3 байта. А если в палитре 16 миллионов цветов?

Тема определения количества информации на основе алфавитного подхода используется в заданиях А1, А2, А3, А13, В5 контрольно-измерительных материалов ЕГЭ.

Добавить комментарий