DRAKON.SU

Текущее время: Суббота, 05 Июль, 2025 10:56

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 225 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 12  След.
Автор Сообщение
СообщениеДобавлено: Воскресенье, 10 Март, 2013 15:46 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Владимир Паронджанов писал(а):
5. Биологам не нужны умные термины: исполнитель и программа.

Спорный тезис. Может добавить в ненужность биологам и термин "алгоритм"?

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

Независимо от того осознают (наблюдают) биологи работу предмета исследования (например, фага) или нет - фаг работает.

Более того, фаг может работать (выполнять заложенную в него природой (?) программу) даже в отсутствии во Вселенной биологов вообще.

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

Вы же тоже говорите: есть разница между программой и алгоритмом (правда не говорите в чём она заключается : ).

Кстати, Вы уверены, что биологи уже сейчас не используют термины «исполнитель» и «программа»?


Зачем нужен термин «исполнитель»?

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


Владимир Паронджанов писал(а):
6. В моей последней книге нет четких определений алгоритма и программы. Но они вытекают из контекста книги.
Это странно.

Книга с названием «Основы алгоритмизации» по определению : ) должна иметь соответствующие определения.

Что ответит на вопросы «Что такое алгоритм?» и «Что такое программа?» человек, прочитавший Вашу книгу? Будут ли у него ответы? Если да, то почему этих ответов нет у автора книги, который читал её неоднократно? Или в ответ посоветует прочитать книгу?

- Как? Вы прочитали Библию и всё ещё не понимаете, что есть Б-г? Прочитайте Библию еще раз!

Владимир Паронджанов писал(а):
Именно поэтому в моей книге Вы не найдете упоминание про таких "исполнителей" как сердце, жаба, фаг.

Я на этом и не настаиваю : )

Ильченко Эдуард писал(а):
Владимир Паронджанов писал(а):
ДРАКОН — это язык для описания алгоритмов.

Имеется ли у Вас формальное определение понятия "алгоритм"?

Владимир Паронджанов писал(а):
Нет. Если Вы подскажете, буду благодарен.
Я имею в виду не то, что обычно говорят, а что-то новое.

Для себя я достаточно строго разграничил понятия «алгоритм» и «программа» (см. выше).
Хотелось бы услышать возражения по сути, если они есть.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 16:20 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Ильченко Эдуард писал(а):
Кстати, Вы уверены, что биологи уже сейчас не используют термины «исполнитель» и «программа»?

Зачем нужен термин «исполнитель»?

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


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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 17:48 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5999
Откуда: Москва
Ильченко Эдуард писал(а):
Может добавить в ненужность биологам и термин "алгоритм"?
Нет, этого делать нельзя. Термин "алгоритм" должны знать все.
Поясню. В свое время, академик Андрей Петрович Ершов выдвинул тезис: "Программирование — вторая грамотность".
Я изменяю этот тезис на другой: "Алгоритмы — вторая грамотность". Или так: "Алгоритмизация — вторая грамотность".

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

Ильченко Эдуард писал(а):
Независимо от того осознают (наблюдают) биологи работу предмета исследования (например, фага) или нет - фаг работает.
Согласен.

Ильченко Эдуард писал(а):
Более того, фаг может работать (выполнять заложенную в него природой (?) программу) даже в отсутствии во Вселенной биологов вообще.
Согласен. Только компьютерное слово программа здесь лишнее. Программа — это слово-паразит.


Ильченко Эдуард писал(а):
Фаг есть. Работа есть. Программа есть. А алгоритма нет. Потому что нет наблюдателя, который может «отчуждить» знание о повторяющейся последовательности действий фага и назвать его алгоритмом.
Согласен. Чтобы нарисовать алгоритм, нужен человек. Только компьютерное слово программа здесь лишнее. Программа — это слово-паразит.

Ильченко Эдуард писал(а):
Вы же тоже говорите: есть разница между программой и алгоритмом (правда не говорите в чём она заключается.
Алгоритм — это описание последовательности действий (команд). В алгоритме отсутствует описание данных.
Программа = Алгоритм + Данные. Так сказал Никлаус Вирт. И я даю разъяснения строго по Вирту (как мне кажется).

Ильченко Эдуард писал(а):
Кстати, Вы уверены, что биологи уже сейчас не используют термины «исполнитель» и «программа»?
Вопрос неправильно поставлен. В данном контексте термины «исполнитель» и «программа» — это слова-паразиты.


Ильченко Эдуард писал(а):
Зачем нужен термин «исполнитель»?

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

Ильченко Эдуард писал(а):
Книга с названием «Основы алгоритмизации» по определению : ) должна иметь соответствующие определения.
Эдуард Владимирович, я с большим интересом и благодарностью выслушаю Ваши критические замечания после того, как Вы прочитаете книгу. Иначе получается "Я Пастернака не читал, но осуждаю".

Ильченко Эдуард писал(а):
Что ответит на вопросы «Что такое алгоритм?» и «Что такое программа?» человек, прочитавший Вашу книгу? Будут ли у него ответы? Если да, то почему этих ответов нет у автора книги, который читал её неоднократно? Или в ответ посоветует прочитать книгу?
Это книга про алгоритмизацию. Это не книга про программирование.

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

Я постарался удалить из книги все (почти все), что относится к программированию. В том числе определение понятия "программа". Чтобы полностью сосредоточить внимание на алгоритмах.

Ильченко Эдуард писал(а):
Имеется ли у Вас формальное определение понятия "алгоритм"?
Алгоритм — это осмысленное описание целенаправленных действий. Алгоритм не содержит описание данных. Алгоритм — это широкое понятие, которое должны знать все (почти все). Программа — это узкое понятие, интересное только программистам.

==============================

Подчеркну суть разногласий, как я ее понимаю.
Вы считаете, что книга с названием "Основы алгоритмизации" должна давать определение понятия "программа".
А я считаю, что не должна. Моя книга про алгоритмы, а не про программы.

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

Это порочная практика. Почему? Потому что книги по алгоритмам испорчены "умными" словами, понятными только программистам. Поэтому они недоступны для народа.

Моя задача — сделать алгоритмы доступными для народа.


Последний раз редактировалось Владимир Паронджанов Воскресенье, 10 Март, 2013 20:41, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 18:37 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Илья Ермаков писал(а):
но тут есть отличие между алгоритмизацией описывающей и алгоритмизацией проектирующей.

Ниже имхо на текущее время : )

Алгоритм - описание последовательности команд для Исполнителя, выполнение которых Исполнителем, приводит к заранее известному результату.

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

Команда - физическое изменение свойств пространства, под воздействием которого (т.е. изменения) меняется внутреннее состояние Исполнителя.

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

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

Алгоритм работы Исполнителя (т. е. описание) одновременно является одной из программ для Наблюдателя : )


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

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


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

Да.
Явление (последовательность действий Исполнителя) одно, а описания (алгоритмы) разные.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 19:26 

Зарегистрирован: Понедельник, 09 Ноябрь, 2009 17:29
Сообщения: 904
Откуда: Россия, Питер
Владимир Паронджанов писал(а):
Я изменяю этот тезис на другой: "Алгоритмы — вторая грамотность".

Согласен.
Знать, как добиться результата, всегда полезно.

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

Не согласен.
Для проверки уберём слово-паразит из приведённой фразы.

Если биологи осознаЮт (допускают, предполагают, видят ...), что предмет их исследования работает …?..., то они могут составить (изложить, зафиксировать) алгоритм его работы.

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

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

Владимир Паронджанов писал(а):
Ильченко Эдуард писал(а):
Вы же тоже говорите: есть разница между программой и алгоритмом (правда не говорите в чём она заключается.
Алгоритм — это описание последовательности действий (команд). В алгоритме отсутствует описание данных.
Программа = Алгоритм + Данные. Так сказал Никлаус Вирт. И я даю разъяснения строго по Вирту (как мне кажется).

Я пытаюсь разобраться строго по жизни : ) Потом можно посмотреть, как это согласуется с Виртом.

Алгоритм без описания данных — это мёртвая конструкция. Её нельзя применить. А применив можно получить катастрофу.

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

Приведите пример алгоритма, не использующего данные.

Владимир Паронджанов писал(а):
«исполнитель» и «программа» — это слова-паразиты.

Это слова-знаки.

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

Это ровно то, что говорилось по поводу терминологии языка ДРАКОН.

Владимир Паронджанов писал(а):
Ильченко Эдуард писал(а):
Книга с названием «Основы алгоритмизации» по определению : ) должна иметь соответствующие определения.
Эдуард Владимирович, я с большим интересом и благодарностью выслушаю Ваши критические замечания после того, как Вы прочитаете книгу. Иначе получается "Я Пастернака не читал, но осуждаю".


Владимир Паронджанов писал(а):
В ЧЕМ НОВИЗНА ДАННОГО УЧЕБНИКА?

1. До сих пор два понятия "алгоритм" и "программа" не были четко разграничены. И во многих случаях (хотя и не всегда) использовались как синонимы.


Пастернака я прочитал в Вашем заявлении (см. выше) и предположил, что Вы чётко разграничили понятия "алгоритм" и "программа". Оказалось, что это разграничение вскрывается контекстом учебника. Потом оказалось, что понятие «программа» вообще отсутствует.

Владимир Паронджанов писал(а):
Я каленым железом вычистил из книги все (почти все), что относится к программированию. В том числе определение понятия "программа".


Я к Вам абсолютно не «в претензиях».
Меня интересовали только формулировки понятий «алгоритм» и «программа».


Владимир Паронджанов писал(а):
Программа — это узкое понятие, интересное только программистам.

А также партийным лидерам, регулярно издающим программы действий своих партий : )

Владимир Паронджанов писал(а):
Моя задача — сделать алгоритмы доступными для народа.

Желаю успехов!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 20:56 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5999
Откуда: Москва
Ильченко Эдуард писал(а):
Алгоритм без описания данных — это мёртвая конструкция. Её нельзя применить.
Согласен.

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

==================================

Суть в том, что неявные или явные (но неформальные) описания данных есть всегда. Эти сведения есть повсюду. И с этим нет никаких проблем.

Проблема в том, что нет языка для описания последовательности действий. И поэтому "народ" описывает действия неумело и с ошибками. ДРАКОН позволяет устранить этот (очень серьезный) недостаток.

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

========================================

ВЫВОДЫ

1. Язык моделирования ДРАКОН решает важную задачу. (Про язык программирования ДРАКОН в данном случае речь не идет).

2. Описание данных в различных дисциплинах (в том числе общественных и гуманитарных) — давно известная вещь, которая давно и успешно решена.

3. Острая (и нерешенная) проблема состоит в том, что специалисты-непрограммисты не умеют описывать свои процедурные (= императивные) знания.

4. ДРАКОН решает проблему, описанную в пункте 3.

5. Успех дела достигается соединением двух элементов:

— давно известным неформальным описанием данных;

— использованием языка моделирования ДРАКОН.

6. Языки программирования (и исполнители) для решения этих проблем не годятся. Они очень хороши и крайне необходимы для решения многих важных задач. Но для развития алгоритмического мышления населения и массовой алгоритмизации общества они не подходят. А ДРАКОН подходит.


Последний раз редактировалось Владимир Паронджанов Воскресенье, 10 Март, 2013 21:26, всего редактировалось 6 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 20:57 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
Здесь
http://subscribe.ru/archive/science.exact.math/200905/19163312.html
об алгоритме сказано
Цитата:
То, что единого строгого определения "алгоритма" не существует, свидетельствует не о туманности смысла этого понятия, а о том, что оно входит в число общенаучных понятий, имеющих чрезвычайно широкое применение. Точно так же нельзя строго определить понятия "элемент", "система", "функция"... В силу их универсальности они активно используются в разных задачах и областях знаний, приобретая там специфические качества, что и создает разнобой в определениях.


Последний раз редактировалось ==== Воскресенье, 10 Март, 2013 21:28, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 10 Март, 2013 21:09 

Зарегистрирован: Вторник, 02 Октябрь, 2012 11:39
Сообщения: 29
Владимир Паронджанов писал(а):
6. В моей последней книге нет четких определений алгоритма и программы. Но они вытекают из контекста книги.

Хотел удержаться, но не смог.

Ув. Владимир Даниэлович!
Ваш отказ дать определение слову "алгоритм" для меня совсем не понятен. Не дав определение алгоритму, алгоритмизации, Вы делаете ошибку. Большую ошибку. Грубую ошибку. Непростительную ошибку ((с) не мое).
Если Вы не можете дать определение, то возникает естественный вопрос: а знает ли предмет собственно автор? По моему мнению, если Вы претендуете на звание авторитета в этой области, то должны оперировать этим понятием, как жонглер-виртуоз в цирке своими булавами.
Если я не нахожу подходящего определения с ходу, то ищу в толковых словарях. Вот из Ожегова:
"АЛГОРИ'ТМ, -а, м. (спец.) Совокупность действий, правил для решения данной задачи. А. извлечения корня. || прил. алгоритмический, -ая, -ое."

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

Вы желаете, чтобы Ваше детище было в таком же положении?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 07:59 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
Ильченко Эдуард писал(а):
Alexey_Donskoy писал(а):
Я буду настаивать на самом общем определении алгоритма как программы для абстрактного исполнителя.

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

Цитата:
Мне алгоритм видится как план действий исполнителя. Если алгоритм содержит только команды, исполняемые исполнителем, то алгоритм становится неотличим от программы.
Именно так.

Цитата:
Алгоритм не существует вне сознания Наблюдателя.
Сейчас пойдём даже глубже! :wink:
Сравните: дифференциальное уравнение не существует вне сознания математика.
А что существует? Существует структура материи, которая "хардверно" определяет статистически значимые формы протекания процессов. Всё это в совокупности МОЖЕТ БЫТЬ РАССМОТРЕНО как исполнитель со своею программой!
И при анализе В ТАКОЙ ФОРМЕ мы приходим к абстракции алгоритма!

Анализ в другой форме может привести к дифференциальному уравнению, а не к алгоритму. В разных случаях УДОБНЕЕ будут разные абстракции.

Почему это так? Потому что анализ приводит к построению МОДЕЛИ. И алгоритм, и дифур есть не что иное, как абстракции, определяющие формализм модели. Моделей может быть много, даже для одного и того же объекта.

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

Цитата:
Алгоритм - проекция программы Исполнителя на сознание Наблюдателя : )
Дракон-схема - проекция знаний Наблюдателя (о программе Исполнителя) на носитель графических образов в виде визуальных знаков, построенных и расположенных в соответствии с правилами языка ДРАКОН.
Да.


Владимир Паронджанов писал(а):
Для нерукотворных алгоритмов понятие Исполнитель теряет смысл.
В таком случае и понятие алгоритма теряет смысл.
Даже математику нельзя столь вольно обращаться с реальностью.

Цитата:
Биологам не нужны умные термины: исполнитель и программа.
Наоборот.
НЕ ВСЕМ БИОЛГАМ нужно понятие алгоритма (нужно только тем, кто конкретно с описываемыми объектами работает).
ВСЕМ БИОЛОГАМ необходимо понятие программы (как особенности структуры материи, как закономерности протекающих в материи процессов).
Думаю, что при нынешнем уровне мракобесия в стране и в мире (когда требуют убрать эволюцию из старых учебников и издают новые православные учебники биологии), для формирования естественнонаучной картины мира понимание источника "законов природы" жизненно необходимо! А говорить о таких источниках без понятия "исполнитель" и "программа" более чем затруднительно, и совершенно нецелесообразно.


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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 08:27 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Ильченко Эдуард писал(а):
Наблюдатель — объект (субъект?), имеющий механизм предсказания (целеполагания), возможность физического наблюдения Исполнителя и некоторые другие свойства : )

Алгоритм работы Исполнителя (т. е. описание) одновременно является одной из программ для Наблюдателя : )


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

Я понимаю это дело по другому.

Рассматриваем некоторую систему (т.е. очертили границы рассматриваемой части мира) - неважно, реальную изучаемую или воображаемую проектируемую.
Начинаем работать с динамикой, поведением во времени. Для начала, конечно, важно чётко представлять пространство состояний системы (множество её возможных состояний и переходов между ними; непрерывные множества состояний обычно называют фазовыми пространствами, в физике, в частности).
Далее фиксируем алфавит элементарных событий (нечто, что продолжается во времени от t1 до t2 и может быть наблюдаемо по смене состояния системы до и после). Под такое понимание события попадают и действия активной системы, и переходы состояний пассивной под внешним влиянием, и получение сигнала (= информационного воздействия) из окружающей среды (система ещё не отреагировала на сигнал, но уже сменила состояние - она "знает" о сигнале).

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

Фиксируем начальное состояние системы s0.
Поведением системы относительно начального состояния s0 назовём множество всех процессов, которые могут произойти в системе, находящейся в начальном состоянии s0.

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

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


И тут, как видим, никакой разницы нет (как верно Алексей заметил), описываем мы или проектируем.
Но дальше, конечно, разница будет - если проектируем, то наш алфавит должен совпасть с системой команд какого-либо исполнителя (или должен быть раскрыт вспомогательными алгоритмами, "библиотечно").
Если описываем, то неважно, тут просто остаётся обычный научно-образовательный критерий удобства описания.

Ну а если мы описываем вообще "отбалдовый" алгоритм (типа "поездок на рыбалку")? С какой системой мы работаем? А системой, поведение которой мы описываем, является некая воображаемая модель рыбалки, как мы её себе представили для данного примера....

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

Примерно так.

Литература, под влиянием которой я так вижу этот вопрос:
Э. Дейкстра Краткое введение в искусство программирования, Глава 1 (http://khpi-iip.mipk.kharkiv.edu/librar ... 316_2.html)
В. Турчин Эпистемология действия.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 08:49 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
Илья Ермаков писал(а):
Это сложно :) Нужно в самое определение вводить субъекта (Наблюдателя), учитывать эти гносеологические тонкости взаимодействия субъекта и объекта познания и проч.
Устал уже повторять, что алгоритм и дифур - примерно равномощные абстракции, используемые при описании материи.
Почему место дифура в анализе не вызывает никаких вопросов?
Почему всем понятно, что дифура как такового в природе не существует, и необходимость наблюдателя не вызывает сомнения?
Так с алгоритмом точно то же самое должно быть!

Цитата:
важно чётко представлять пространство состояний системы
Важно ещё чётко представлять относительность самого определения состояний. Так, для анализа движения поезда из пункта А в пункт Б положение каждого из пассажиров в купе несущественно, и не включается в пространство состояний системы. А вот в задаче детективного расследования - включается! ;)

Цитата:
Алгоритмом назовём описание поведения системы, находящейся в некотором начальном состоянии.
Несистемное определение.
Как минимум, отсюда надо убрать про начальное состояние. Потому что любое текущее состояние будет начальным, если начинать "алгоритм" с этого состояния. Никакой полезной информации эта часть определения не несёт.
Убираем, смотрим дальше. Про "описание" - верно. Но определение оказывается недостаточным - не отражает существенных особенностей описания. Дифур - тоже описание поведения системы, но его алгоритмом почему-то язык не поворачивается назвать, не так ли? :wink:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 08:59 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Alexey_Donskoy писал(а):
Почему всем понятно, что дифура как такового в природе не существует, и необходимость наблюдателя не вызывает сомнения?
Так с алгоритмом точно то же самое должно быть!

Я не против самого присутствия наблюдателя, я против завязки на дуализм субъекта-объекта познания, который появился у Эдуарда...

Цитата:
Важно ещё чётко представлять относительность самого определения состояний. Так, для анализа движения поезда из пункта А в пункт Б положение каждого из пассажиров в купе несущественно, и не включается в пространство состояний системы. А вот в задаче детективного расследования - включается! ;)

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

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

Нет, прежде чем мы начинаем строить алгоритм, мы должны понимать, относительно какого состояния он "начинается". Потому что если возьмём другое состояние, то, скорее всего, алгоритм придётся перестраивать (преобразовывать, как минимум). Вот в определении и указано, что любой описанный алгоритм подразумевает, что выбрано некоторое состояние системы в качестве начального.

Цитата:
Убираем, смотрим дальше. Про "описание" - верно. Но определение оказывается недостаточным - не отражает существенных особенностей описания. Дифур - тоже описание поведения системы, но его алгоритмом почему-то язык не поворачивается назвать, не так ли? :wink:

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 09:04 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Alexey_Donskoy писал(а):
Убираем, смотрим дальше. Про "описание" - верно. Но определение оказывается недостаточным - не отражает существенных особенностей описания. Дифур - тоже описание поведения системы, но его алгоритмом почему-то язык не поворачивается назвать, не так ли?

Аналогию между дифурами и алгоритмами я выше отметил, а теперь вернёмся к определению.
Слово "поведение" строго в нём определено, до определения алгоритма. Так что дифур уже не попадает под введённое определение.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 09:20 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
Илья Ермаков писал(а):
Так что дифур уже не попадает под введённое определение.
Попадает. При переходе к конечным разностям. Что даёт некоторую потерю информации о системе (погрешность метода).

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 09:45 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Согласен! Ну, даже если и попадает, с моей точки зрения, тем лучше! Ибо там фундаментальное подобие понятий, которое Вы и сами отметили выше.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 13:39 

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 511
Илья Ермаков писал(а):
.. алгоритм - это аналог дифура для систем с дискретным пространством состояний.
По-моему, здесь присутствует глобальное заблуждение.

Чтобы это как-то прояснить без разночтений, попробую на основе элементарного теормеха:
1. Систему отсчёта(СО) выбирает наблюдатель, точку(дискретно или непрерывно) по траектории(вычислений, действий, состояний и т.д.) двигает исполнитель.
2. естественный способ задания - закон изменения траекторной координаты в подвижной СО, начало которой СОВПАДАЕТ с движущейся точкой. Этим способом удобно пользоваться, если траектория ЗАРАНЕЕ ИЗВЕСТНА.
3. координатный способ задания - "параметрические" уравнения изменения координат в СО, начало которой НЕ СОВПАДАЕТ с движущейся точкой. Исключение параметра позволяет получить уравнение траектории в выбранной СО.

Естественно, нам хотелось бы, чтобы задана/известна была вся траектория. Поэтому, чаще всего, поступают тупо - описывают траекторию "от точки к точке". Ничего не напоминает? Типа программирования или "драконирования"? Но при этом нет никакой гарантии, что описана действительно вся траектория, пока не выполнен п.3. - выбрана СО, отличная от естественной(типа, абстрагироваться), получена параметрическая система уравнений и затем исключён параметр. А уж какие это уравнения будут - дело третье.

Получается, что алгоритм - это всего лишь уравнение траектории. Соответственно, "маршрут" на дракон-схеме - это траектория в естественной системе координат.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 14:48 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1097
Откуда: Россия, Чебоксары
Рэйлвэй Каген писал(а):
Получается, что алгоритм - это всего лишь уравнение траектории.
Правильно.
Только учтите, что дифур - это тоже "всего лишь" уравнение траектории! :wink:

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

Ещё один нюанс всё-таки заключается в том, что алгоритм не всегда бывает первичным (разве что в технических системах). Обычно он описывает видимые (человеком) СЛЕДСТВИЯ того процесса, который непосредственно описывается теми же дифурами... или, в конце концов, уравнениями Шрёдингера! :D

Так что вопрос фундаментальности остаётся открытым :wink:

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

Можно сказать, что траектория - одна из фундаментальных форм описания модели. Дифур - ещё одна фундаментальная форма. Частично они взаимозаменяемы, иногда связаны отношением объект-представление... вот такая философия...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 17:19 

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 511
Alexey_Donskoy писал(а):
Только учтите, что дифур - это тоже "всего лишь" уравнение траектории! :wink: ..
Ну и зачем плодить лишние сущности? Разве только в претензиях на фундаментальность. А такое даже для прекрасных наработок методического уровня весьма чревато(как уже видели в другом разделе форума). :lol:
Предлагаю вообще упразднить понятие "алгоритм" чтобы зазря не дублировать сущности и не запутывать простые, устоявшиеся определения. :twisted:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 18:13 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 243
Откуда: Россия, Стерлитамак
Устроили тут "Матрицу" :)

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


А чё, если "движение" это фундаментальное (?) свойство материи, то значит и отображаться она должна "траекторией"

Про дифуры ничего сказать не могу :oops:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 11 Март, 2013 23:15 

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 511
Вам станет смешно, но для материи там будет поток вместо траектории. :shock:


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 225 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 12  След.

Часовой пояс: UTC + 3 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2025, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB