Искусственный интеллект на каком языке программирования пишется. На каком языке программирования разрабатывать искусственный интеллект? Железные люди Анри Дро

Персональные данные - это сведения о том или ином физическом лице. Эту информацию пользователи вводят на различных интернет-серверах ежедневно. В 2015 году подписан закон о хранении персональных данных. Согласно этому акту информация о гражданах РФ может храниться лишь на территории России. Что это значит? И чем грозит несоблюдение

Предыстория

Еще в далеком 2006 году был принят ФЗ о персональных данных, призванный регулировать специфические отношения физических лиц с так называемыми операторами. Целью его было обеспечить защиту пользователей интернета от нежелаемой обработки и передачи личных данных третьему лицу.

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

С 1 сентября 2015 года, после того как был подписан закон о хранении персональных данных на территории России, оператор больше не вправе пользоваться в своей работе иностранными серверами. Для того чтобы понять, кого в первую очередь касаются подобные изменения и какое они влияние оказывают, следует разобраться с основными понятиями.

Персональные данные

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

Конфиденциальность информации

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

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

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

Обработка

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

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

Обезличивание

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

  • замена части информации;
  • замена цифровых данных:
  • сокращение сведений;
  • распределение сведений на разных серверах.

Субъект

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

Другие понятия

Все данные о человеке хранятся в базах. С помощью определенных средств они обрабатываются и используются оператором. Эта технология называется информационной системой персональных данных. Ею сегодня пользуются все, начиная от мелких коммерсантов, заканчивая государственными исполнительными органами. На них же и возложена защита персональных данных. Контроль соблюдения требований, предусмотренных законодательством, осуществляют Роскомнадзор, ФСБ и ФСТЭК.

Трансграничная передача данных - это передача информации физическому или юридическому лицу иностранного государства.

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

Хранение данных на территории России

В своей деятельности каждый оператор должен теперь использовать только те базы данных, которые хранятся на территории России. Для чего созданы такие ограничения? Закон, о котором говорилось выше, затрагивает прежде всего безопасность персональных данных. Но ничего не говорится о сфере его действия.

Все области деятельности на территории России должны осуществляться с соблюдением Законодательства РФ. Однако во Всемирной сети любые действия имеют трансграничный и виртуальный характер, что осложняет контроль над работой операторов. В то же время то, что интернет-сайт доступен жителям России, вовсе не говорит, что на него должно распространяться российское законодательство. Хранение баз данных на российских серверах облегчает контроль над деятельностью операторов.

Закон о хранении персональных данных предусматривает обработку персональных данных лишь на российских интернет-ресурсах. Но здесь существуют и исключения. Они касаются иностранных серверов, направленных на территорию РФ. На такую направленность может указывать русскоязычность сайта или доменное имя. Однако, поскольку русский язык довольно распространен и за пределами РФ, дополнительно рассматриваются следующие элементы: возможность расчета в российских рублях, заключение договоров на территории РФ. Таким образом, иностранные предприниматели включают в свою бизнес-стратегию российских потребителей. А действие закона о персональных данных при этом направлено и на их деятельность.

Иностранные серверы

Итак, хранение персональных данных закон теперь допускает лишь на российских серверах. Базы данных, находящиеся за пределами РФ, обрабатываться не могут. Госдума приняла закон об этом запрете. Однако документ этот порождает многие проблемы. И прежде всего трудности касаются предпринимательской деятельности.

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

Неудобства для предпринимателей

Специалисты полагают, что новый закон негативно отразится на деятельности многих российских компаний. Каждый его нарушитель с 1 сентября 2016 года попадает в черный список Роскомнадзора. Этот перечень сегодня состоит из пиратских сайтов и сайтов, пропагандирующих незаконную деятельность либо действия, не соответствующие морально-этическим нормам (насилие, суицид, детское порно, экстремизм). Запрет на эти ресурсы вполне понятен. Но многие предприятия, которые осуществляют абсолютно законную деятельность, возможно, не смогут перенести свои базы на российские ресурсы к указанной дате.

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

Сервисы для хранения данных

Большинство компаний сегодня осуществляют продажи, прибегая к интернет-маркетингу. Один из основных инструментов - email-рассылка. Владельцы корпоративных сайтов пользуются онлайн-сервисами для информирования своих клиентов о различных мероприятиях, которые проводятся в их компаниях. Эта схема настолько распространена, что без нее сегодня сложно представить развитие какого бы то ни было бизнеса. Существует все же заблуждение, что владельцы сайтов не являются операторами, поскольку они не хранят персональные данные. Это за них делают специальные онлайн-сервисы. Но ведь обрабатывает и формирует данные о пользователях именно владелец сайта. А потому он является оператором и в ближайшее время обязан перенести всю имеющуюся у него информацию о пользователях интернета на российские ресурсы. Сделать это непросто, и подобные действия, прежде всего, сопряжены с немалыми финансовыми затратами.

Обратная сила закона

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

Сбор информации

Оператор обязан осуществить локализацию всех данных на российском сервере. И эти действия, согласно формулировке в законе, тесно связаны со сбором персональных данных. Этот термин используется для обозначения целенаправленного получения информации о физических лицах. Ее, как правило, предоставляет сам пользователь интернета. Но нередко случается, что данные попадают случайно. Например, в результате получения различных писем. Сбором информации также не являются данные об одном юридическом лице, полученные другой организацией. Такая информация является контактной, и ее обработка необходима для осуществления совместной деятельности.

Передача данных за пределы РФ

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

Влияние нового закона на банковскую сферу

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

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

Дата-центр

В настоящий момент в Московской области строится новый дата-центр, который станет самым крупным в России. В этот проект инвестируют средства крупные компании, поскольку они не могут недооценивать важность хранения персональных данных. Однако эти работы сопряжены с некоторыми трудностями. Построить быстро дата-центр невозможно.

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

По поводу нарушений закона о персональных данных. Они вступят в силу 1 июля 2017 года и коснутся всех, кто собирает, обрабатывает и хранит любые персональные данные.

Штрафы разделили по видам нарушений и увеличили в десятки раз. Например, если не разместить на сайте политику конфиденциальности, ИП могут оштрафовать на 10 тысяч рублей, а компанию - на 30 тысяч. А если обрабатывать персональные данные без согласия клиента интернет-магазина или подписчика на информационный курс, то штраф для юрлица составит до 75 тысяч рублей. Директору компании или предпринимателю придется заплатить до 20 тысяч . Если нарушений несколько, то и штрафов будет несколько.

Нужно срочно привести в порядок свои сайты. Проверки уже идут 💻

Сейчас протоколы о нарушениях может выписывать только прокуратура. Штраф не зависит от вида нарушения и составляет для ИП или директора максимум 1000 рублей, а для юрлица - 10 тысяч рублей. Процедура занимает много времени, штрафы маленькие, поэтому проверяют редко и не всех.

Как узнать, являюсь ли я оператором персональных данных?

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

Скорее всего, вы являетесь оператором персональных данных, если каким-то образом получаете от любых людей такую информацию в любом сочетании:

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

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

А если я записываю телефон друга или электронную почту девушки на сайте знакомств, мне нужно соблюдать этот закон?

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

Как правильно работать с персональными данными, чтобы не нарушить закон?

Как минимум нужно:

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

Что? Я должен еще где-то зарегистрироваться?

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

Уведомление можно не подавать, если:

  • обрабатываются только данные сотрудников;
  • персональные данные получены только для исполнения конкретного договора с конкретным человеком и больше никак не будут использоваться и тем более - распространяться;
  • человек сам опубликовал эти данные в общем доступе;
  • у вас есть только ФИО клиента и больше ничего.

У меня есть сайт, и я получаю персональные данные. Что мне делать?

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

Подготовьте публичные документы и разместите их на сайте так, чтобы они были доступны на всех страницах. Это может быть пользовательское соглашение, как у «Ламоды» , правила продажи, официальное уведомление, как у «М-видео» , политика конфиденциальности, как у «Рестора» , «Адидаса» или «Озона» . Можно прописать условия обработки персональных данных в обычном договоре или оферте, как это делает Сбербанк .

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

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

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

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

Это правда, что хранить персональные данные можно только на российских серверах? Если у меня хостинг в Европе, я нарушаю закон?

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

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

Да успокойтесь вы все! Никого не будут штрафовать из-за каких-то форм на сайте и ненужных бумаг.

В Тамбовской области прокуратура оштрафовала юридическую компанию за заполнение формы обратной связи без согласия пользователя на обработку персональных данных. Суды поддержали.

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

В Астрахани прокуроры штрафуют владельцев сайтов за формы обратной связи по алфавиту.

Кроме штрафов в пользу государства за нарушение правил обработки персональных данных могут взыскать компенсацию морального вреда и даже посадить в тюрьму.

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

Новой головной болью для компаний, юристов и IT-специалистов стал федеральный нормативный акт от июля 2014 № 242-ФЗ, согласно которому с сентября 2017 должны были вступить в силу изменения в Закон № 152-ФЗ «О персональных данных». В декабре 2014 вступление в силу нововведений было передвинуто на более ранний срок – на первое число сентября 2015.

Закон о защите персональных данных с 1 сентября 2018

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

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

Федеральный закон с изменениями: что такое?

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

Последняя редакция

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

Закон о персональных данных с 1 сентября 2018

Необходимость в принятии корректировок в Закон озащите личных сведений связана с последними событиями (санкции со стороны стран Европы и Америки, включение РК в состав Российской Федерации, нестабильная ситуация на территории ДНР, ЛНР).

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

О хранении на территории РФ

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

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

О передаче третьим лицам

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

Закон о персональных данных с 1 января 2018 с комментариями

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

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

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

Изменения и основные положения

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

Кого касаются принятые дополнения? Новшества поставили в затруднительное положение не только компании, предоставляющие услуги с использованием личных сведений, но и их пользователей. Так как для получения доступа к услугам им теперь постоянно придется заполнять либо заявление о согласии, либо ставить обязательную галочку в пункте «Соглашение об использовании персональных данных». А это приводит только к непониманию и недоверию к оператору услуг. Так как каждый раз возникает вопрос: «Зачем нужен этот пункт? Не будет ли использовано это согласие не в моих интересах?».

Штраф: сколько заплатишь о разглашении?

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

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

Само понятие "искусственный интеллект" возникло где-то на заре вычислительной техники. Несмотря на почтенный возраст, термин этот не имеет точного определения и всегда понимался в интуитивном смысле. Обычно говорят, что к области искусственного интеллекта относятся те задачи, которые до сих пор человек решает лучше, чем компьютер. Таким образом, круг решаемых в рамках искусственного интеллекта проблем постоянно динамически изменяется. Например, еще несколько лет назад обучение ЭВМ игре в шахматы являлось прерогативой AI (от английского Artifical Intelligence - искусственный интеллект), но сегодня все больше специалистов считает, что игра в шахматы уже не является проблемой искусственного интеллекта. Сегодня главными проблемами, решаемыми в рамках AI, являются примерно следующие: построение экспертных систем, решение задач поиска, в которых полный перебор вариантов теоретически невозможен (в том числе - программирование игр), моделирование биологических форм, распознавание образов. Фундаментальные принципы решения всех этих задач были заложены еще в начале семидесятых, но, в связи с тем, что задачи AI очень ресурсоемки, настоящее развитие они получили только в наши дни.

Для решения задач AI еще в начале семидесятых годов были созданы два специфических языка программирования - Пролог (Prolog) и Лисп (LISP). Современный разработчик искусственного интеллекта должен свободно владеть каждым из них. Далее остановимся на самых характерных их особенностях.

Исторически Лисп более старый язык. Концепция, которую он представляет, называется функциональным программированием , она является прямым продолжением обычного алгоритмического подхода. Лисп-программа представляет собой функцию, результат вычисления которой - это результат работы программы, а аргументы, чаще всего - другие вызовы функций. В связи с объективными причинами в Лиспе принята бесскобочная запись при вызове функций, вызов любой функции осуществляется при помощи списка, первым элементом которого является название функции, а все остальные элементы представляют аргументы. Например, сложение двух чисел A и B может выглядеть так: (add A B), сложение трех чисел - так: (add A (add B C)). Самой важной особенностью Лиспа является то, что запись вида (add A B) может представлять из себя не только список, как вызов функции, но и список, как элемент данных, содержащий в себе три компоненты - add, A и B. Решение о том, следует ли использовать список как данные, или его необходимо интерпретировать, в рамках Лиспа может приниматься самой программой. Таким образом, программа получает возможность модифицировать собственный код, что чрезвычайно важно для приложений AI.

Пролог для меня более интересен, чем Лисп, поскольку использует подход к программированию, принципиально отличный от алгоритмического и называемый целевым или декларативным программированием. При алгоритмическом программировании мы задаем последовательность действий, которые должна выполнять программа, т.е. описываем, КАК она должна работать. При декларативном программировании мы описываем, ЧТО программа должна делать, а то, как будут осуществлены эти действия - дело Пролог-системы. Рассмотрим типичнейшую Пролог-задачу - определение, в каких родственных отношениях находятся те или иные люди. В качестве исходных выберем отношение родитель(X,Y), обозначающее, что X является родителем Y, и отношения мужчина(X) и женщина (X), обозначающие принадлежность лица к одному из полов. Тогда исходные данные для программы могут выглядеть примерно так.

мужчина(Сергей). женщина(Тамара). мужчина(Семен). женщина (Людмила). мужчина(Павел).

родитель(Сергей, Семен). родитель(Тамара, Семен). родитель(Семен, Павел).

родитель(Людмила, Павел)

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

Теперь введем выражение дед(X,Y), обозначающее, является ли X дедом Y. Мы используем два Прологовских символа - запятая в следующей записи обозначает логическое и, а символ:- обозначает если.

дед(X,Y):- родитель(X,Z), родитель(Z,Y),мужчина(X).

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

На самом деле та Пролог-программа, которую мы написали, умеет делать очень многое (это наверняка удивит тех, кто до сих пор был знаком только с алгоритмическим программированием). После запуска ее на выполнение Пролог-система выдаст запрос на ввод вопроса. Для начала введем дед(X,Павел) (по-русски этот вопрос звучит так: "Кто дед Павла?"), система выдаст X=Сергей. Теперь спросим дед(Тамара, Павел) ("Является ли Тамара дедом Павла?"). Получим ответ no (нет). Можно спросить родитель(X,_) (так, как на Прологе _ обозначает, что значение этого элемента отношения для нас не важно, то данная запись по-русски звучит, как "Кто является чьим-либо родителем?"). Получим X=Сергей, X=Тамара, X=Семен, X=Людмила. Этим круг вопросов, которые можно задать нашей программе, далеко не исчерпывается.

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

Если читателя заинтересовали Лисп и Пролог, он может изучить их самостоятельно - языки очень просты. Я же в последующих публикациях не буду останавливаться на лингвистических проблемах, стараясь уделить внимание только фундаментальным методам программирования в области AI.

Денис МАРГОЛИН
[email protected]



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: