Имя: Пароль:
1C
1С v8
ГА в 1с
,
0 natali_800
 
19.04.14
12:51
добрый день!)
кто-нибудь сталкивался с генетическим алгоритмом?интересует кодирование самой хромосомы..и если есть примеры наработок на 1с, то вообще хорошо)
1 ДенисЧ
 
19.04.14
12:55
А зачем это делать в 1с?
2 егаис
 
19.04.14
12:55
да все знают, но без фото не взлетит
3 Torquader
 
19.04.14
12:55
(0) Вам что - спросить больше нечего ?
4 natali_800
 
19.04.14
12:57
(1) для составления расписания вуза
5 Torquader
 
19.04.14
12:58
(4) Это проще делать перебором с поиском максимума заранее заданной функции - так как объектов для перебора не так уж и много, то всякое усложнение приведёт только к тому, что нельзя будет использовать весовые критерии.
6 zak555
 
19.04.14
12:58
(5) в 1с же есть методы для анализа данных
7 Torquader
 
19.04.14
13:01
(6) Вообще - оптимальное расписание - это поиск экстремума функционала. Соответственно, каждая функция "идеальности" - это его измерение. Вопрос в том, как потом задать веса для этих функций "идеальности", если полностью идеальное решение не получается.
8 natali_800
 
19.04.14
13:07
(5) переборы точно не подойдут, в этом случае ооочень долго будет составляться расписание.
9 Diversus
 
19.04.14
13:16
(0) Я когда то диплом писал по этой теме, но не на 1С
10 Zamestas
 
19.04.14
13:17
(8) Дык его расчитывать нужно раз в неделю )))
11 natali_800
 
19.04.14
13:25
(10) тут не на неделю в том-то и дело, а на 3-4 месяца
12 Zamestas
 
19.04.14
13:43
(11) Ну тем более на время выполнения расчета можно забить.
13 Diversus
 
19.04.14
13:57
(0) Вот видео демонстрационной программы. Создание расписания с использованием генетического алгоритма.

http://youtu.be/LTt1vWvPyjI

Из исходных данных:
-  Список групп;
-  Размер каждой группы;
-  Список преподавателей
-  Список предметов, читаемых каждым преподавателем;
-  Количество часов каждого предмета в неделю;
-  Указание пар, проведение которых возможно в определенных аудиториях;
-  Время, когда у группы запрещено проводить пары;
-  Указание времени, когда преподаватель не может читать лекции;
-  Список доступных аудиторий;
-  Вместимость каждой аудитории;
-  Время, когда аудитория доступна для проведения занятий;
-  Учебные дни;
-  Максимальное количество пар в день;
   Кроме этих основных параметров "опытные пользователи" могут изменять также и следующие
параметры, непосредственно влияющие на ход генетического алгоритма:
-  Количество особей в популяции;
-  Коэффициенты весовой функции оценки лучшей хромосомы.

Строится расписание.
14 Asmody
 
19.04.14
14:03
(4) пипец. Я наэту тему в дипломную делал в конце 90х.
ГА эту задачу решать можно только при наличии неограниченного объема памяти.
15 Asmody
 
19.04.14
14:06
В случае с расписанием построение селекционной функции для ГА уже нетривиальная задача
16 natali_800
 
19.04.14
14:20
(13) "четкая прога"))
17 natali_800
 
19.04.14
14:23
(15) я так понимаю, от ГА вы отаказались?
18 Asmody
 
19.04.14
14:30
В результате мы использовали разновидность жадного алгоритма. Грубо говоря, расписание - это набор точек в пространстве  {время, предмет, преподаватель, группа, аудитория}. Для каждого элемента рассчитывалась степень свободы, т.е. ОДЗ. Брали худшее, для каждого варианта размещения считали насколько уменьшается свободное пространство. И т.д.
19 IamAlexy
 
19.04.14
14:33
(1) ну это же очевидно - сделать самообучающуюся обработку на 1С которая после N  поколений подготовки отчетности сможет сама собрать и оптимизировать с чтоки зрения налогов баланс, декларации по НДС и прибыли.
20 Asmody
 
19.04.14
14:37
(17) да. Кроме селекционной функции определенная сложность есть в построении хромосом. Получается весьма объемная структура, а учитывая мощьности персоналок того времени, парой-тройкой хромосом можно было забить всю оперативку
21 Diversus
 
19.04.14
14:58
(20) Да ладно! Хотя если конец 90-х...
Просто я на свой диплом делал поиск с помощью генетического алгоритма на транспортной сети города в собственном векторном редакторе. Там ориентированный граф тысяч на 10 точек и ничего искал, причем выдавал достаточно приемлимый результат. Может не оптимальную структуру хранения хромосом выбрал?
С расписанием у меня тоже вроде бы получилось нормально, единственное, там результат зависит от хорошо подобранных штрафов в фитнесс-функции + надо побольше делать хромосом.
22 Traker
 
19.04.14
15:45
23 natali_800
 
19.04.14
15:56
(22) видела такую)только он действительно простой (в смысле кодирования хромосомы), не говоря уже об оценке (есть идеальная строка), но не суть)
24 Gepard
 
19.04.14
16:13
(4) сколько вам платит 1С?
может быть все-таки стоит использовать язык программирования. который можно запустить без ключа, типа явы?
25 Torquader
 
20.04.14
21:05
(24) В 1С задача будет полезна, так как на других языках она вполне реализована.
Мы решали почти полным перебором, когда откидывали заведомо неверные блоки в начале.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.