ЭВОЛЮЦИЯ ?

 

- Других альтернатив нет

- Из жизни современных калькуляторов

- Виртуальный собеседник

 

        

          Что дальше ?
       
     
   

Развитие программного обеспечения идет по той же кривой что и развитие самого компьютерного железа. Немногим отставая.  Горы все возможных функций из которых среднестатистический пользователь использует меньше половины, сложность разработки не соизмерима со сложностью самих программ и этот разрыв будет увеличиваться. В сложных программах теперь появились режимы защиты от сбоев, прижился успешный опыт операционных систем Windows, в тех что попроще ограничиваются формированием отчета о произошедшей ошибке и по желанию пользователя этот данные направляются разработчикам. Какой следующий шаг ?  А они растут версии появляются одна за другой, старые приемы оттачиваются, применяются новые, все идет своим чередом. И наверное это является правильным, в свободных рыночных взаимоотношениях приходится постоянно находится, что называется на плаву иначе конкуренты могут занять твое место.  

Компьютерный мир лихорадит, каждые пол года новый процессор или технология, критерии больше, быстрее и дороже. Что раньше мы покупали Pentium 100 для Windows 3.11,  что теперь Pentium 1500 для Windows XP, разница в скорости конечно есть, да и графика пожалуй на последнем Geforce ничего будет.  

 
     

        

         Виртуальный собеседник
       
     
   

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

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

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

     Искусственный интеллект. Помню года три назад мне пришлось пообщаться с роботом-автоответчиком на одной из Московских BBS, подозрения о подлоге возникли уже на 10 минуте беседы с этим остроумным зверем, по его не адекватным ответам на мои несложные вопросы.  Конечно это было шуткой со стороны Sysop-а той BBS, но если взглянуть в корень проблемы, возможно сейчас создать нечто похожее на искусственный интеллект ?  Та несложная программа, работала по принципу сопоставления известных слов и ответов на них. То есть у нее был фиксированный алгоритм. Усложнив ее, построив многоуровневые базы данных с вопросом и ответом на него, получилась бы отличная программа секретарь.  Для нее не очевидно схожесть по смыслу определенных слов, они отличаются по написанию и поэтому имеют разные места в базе данных. Запрограммировать все ссылки просто невозможно, программа должна сама обучится и понять скажем что «компьютер» и «машина» могут иметь одинаковый смысл в определенных ситуациях. Представьте себе если написать сложный анализатор текста  и запустить его на пару недель порыскать на выделенном канале интернет.  Задать ему начальный уровень знаний и пустить в свободное плавание. Это будет интересно как с точки зрения статистики, так и с точки зрения связей каких либо событий между собой. Компьютеры становятся быстрее, улучшаются операционные системы, добавляются функции, которые раньше были бы просто излишними, сложность самих программ  возрастает, но почему в этой идиллии технического прогресса так сложной заложить в ядро операционной системы алгоритм, который внимательно следил за действиями пользователя, сопоставлял различные ситуации и ответ человека на них, может быть в чем то помогал и оберегал пользователя от необдуманных действий, одним словом приспосабливался к пользователю. Идеи создания  искусственного интеллекта на базе компьютеров были сформированы давно,  они довольно просты в понимании даже для человека далекого от этой темы и полны здравого смысла. Но реализовать их  оказалось куда сложной задаче чем описать на бумаге. Действительно серьезным изучением этого вопроса занимаются военные, но и их модель будет скорее походить на ограниченную личность второго «министра обороны».  Путей развития у таких программ всего два:

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

  2. Создание справочников с огромными базами данных, ярким примером

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

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

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

 

 
     

     

            Других альтернатив нет
       
     
   

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

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

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

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

 
     

  

          Современный компьютер это: 
       
     
   

- Тот что стоит на Вашем столе

- Чаще 32 разрядный калькулятор, где 80 процентов времени он простаивает,

    иногда отвечая на загадочное слово «прерывания», а когда его удается

    чем либо занять, большую часть времени отрисовывает графику;

- Железяка, которая справиться со сложнейшими алгоритмами

- Машина состоящая из более 20 движущихся частей, единственное чего нет так это колес;

- Пожиратель чисел на котором можно помимо прочего пожарить яичницу;

- Про подставку под кофе, булочки, компакт-диски я уже и не говорю...

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

 
     

 

        Назад    
   
        На главную  

Первоисточник: www.taulatin.narod.ru

taulatin@mail.ru

Hosted by uCoz