|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.08.2019, 22:12 | #1 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
Выбор направления роста в машине тьюринга (?) или клеточном автомате (?)
у меня в программе есть такая кодировка направления роста растения:
Код:
ууже находясь в начальной клетке, из этой клетки растение может выбрасть, куда расти, в какие другие клетки, по следующим правилам : - из соседних свободных клеток (всего соседних клеток 8) выбрать клетку с максимальным ресурсом - если таких клеток несколько (еткн),то выбрать клетку с минимальным отклонением от заданного. - если минимального направления движения нет, то выбрать направление с мин омером - еткн- две (больше их быть не может), то выбрать левую. Эти правила нужно реализовать вот в этой функции: Код:
как реализовать правила роста внутри данной процедуры? Я должен работать внутри TModel.getDirect с этим куском: Код:
Чё то я не соображу, с какого боку тут браться. Если у кого быстро появится идея или кто уже с подобным работал, поделитесь мыслями, как это делать. Вот сама прога. Она явно больше 4 мегабайт, так что её сюда не засунуть. Вот сама прога и файл для неё https://www.dropbox.com/sh/z7xllh5uq...b_jlih9Ia?dl=0 Кстати, в поле "мин. рес" или "макс рес" надо уменьшить ресурсы в 10 раз
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось anaschu; 31.08.2019 в 12:09. |
31.08.2019, 12:15 | #2 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
Я так понимаю, что сегодняшний рандомный рост у меня у растения связан внутри TModel.getGrowDirect вот с этим куском кода
Код:
А сделать это можно так: Если все вокруг клетки одинаковые по ресурсам, то , в соответствии с этой строчкой: Код:
Потому тут нужен не рандом, а перебор, причем перебор по трем столбцам вокруг клетки: 1. левый 2. средний ( кроме клетки, откуда идет перебор) 3. самый правый Судя по индексовому обозначению направлений, такой перебор будет давать наименьший номер направления Код:
пока прибизительно так я обрежу алгоритм, то есть 50% кода сверху не будет нужно
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось anaschu; 31.08.2019 в 15:17. |
31.08.2019, 15:47 | #3 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
Чё то сложна...решил для начала сильно упростить прогу. потом разбираться с ентим
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
|
01.09.2019, 01:23 | #4 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
Вот упрощение этой проги. Вернее, это её прабабушка.
и вот в этой проге надо обеспечить верхний изначально рассказанный алгоритм так, что бы стало близко к изначальной проге, мда. В то время гитом я не пользовался, так что пошагового календаря изменений у меня нету. Хотя отдельные файлики же у меня есть, так что мона просто позаливать это всё в гит и пусть он вычисляет, чего там менялось с каждым релизом. Чую, придеться мне так раз десять менять прогу, прежде чем придти к чему то похожему. Для её работы требуется csv файл из начального поста. Пожалуй, мне придёться отсюда последовательно усложнять прогу, доведя её до решения изначального вопроса или хотя бы до постановки вопроса. такой постановки, что бы можно было решить в итоге. делать буду вот тут git@gitlab.com:anaschu/fungi_test_unit_no_prop.git
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось anaschu; 01.09.2019 в 12:21. |
03.09.2019, 17:27 | #5 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
Ну вот код после упрощения и оптимизации
Код:
1. Код:
Код:
Я пробовал в этой функции убрать Random из rr := Random()*totalResource; так, что бы просто у меня rr := totalResource В принципе после этого + некоторые изенения, росло в одну сторону , да. Но протестировать при этом ветвление было невозможным, ветвлвление вообще ушло. ни в прабабушке, ни в бабушке нет норм способов работы с кодом- там все плохо. Оказалось, надо работать даже с усложненным, но более правильно построенным кодом- который приведен в последних сообщениях этой ветки форума
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось anaschu; 03.09.2019 в 17:40. |
05.09.2019, 16:54 | #6 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
NewDirectArea дает веер направлений в связи с бывшим направлнием.
MakePossibleDirectionsToMove - дает все хоть какие то ресурсные направления. ChooseDirectionToMove- среди ресурсных выбирает самое ресурсное додумался сделать вот это: Код:
Код:
Код:
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
Последний раз редактировалось anaschu; 05.09.2019 в 20:02. |
06.09.2019, 11:23 | #7 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
ну вот. вроде бы всё теперь работает. осталось протестить. видео немного опаздывает от разработки, кстати
https://youtu.be/jVsbmvISs18
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
|
06.09.2019, 22:59 | #8 |
Форумчанин
Регистрация: 21.09.2012
Сообщений: 372
|
не те индексы роста- растет не налево вверх, а налево. но в целлом да, не вероятностный вариант сделан, работает на 80% так, как нужно.
https://youtu.be/QoOCtUgXReE
Занимаюсь:1.зверьком- покемончиком для компьютерного затончика. 2 IT-грибами,что бы скушать потом их с вами.3. цифровым обезьянками, как куны ударяют за тянками
|
08.09.2019, 12:31 | #9 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
мне интересно, вы тут решили live-журнал сваять на форуме?
"ковыряю изнутри" (с)
|
08.09.2019, 13:24 | #10 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Да полгода уже ваяет. А что?)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выбор направления в ВУЗе | danil123 | Свободное общение | 3 | 23.07.2013 18:27 |
Задача на машине Тьюринга | Dark Raven | Помощь студентам | 0 | 15.02.2012 13:38 |
Выбор направления.... | wade25 | C# (си шарп) | 2 | 26.03.2011 12:00 |
Деление с остатком на машине Тьюринга | rtyrus | Помощь студентам | 0 | 21.05.2010 00:10 |
Совет по Машине Тьюринга | Rusic | Общие вопросы Delphi | 0 | 19.05.2010 18:33 |