Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Оптимизировать/придумать алгоритм. Просто так.   Найти похожие ветки 

 
AV ©   (2012-09-24 12:30) [0]

Смотрел как играют в одну игру, ради интереса решил подумать вот над чем

Существует игровой мир, на плоскости представляет из себя квадрат, примерно 500х500, но замкнут в 3d.
т.е. пойдя в любом из 8ми направлений(N,NO,..,NW) придешь в эту же точку.
Перемещение по-диагонали нормальное, т.е. по пифагору
Перемещение на 1 клетку = 1 единицы пути и занимает время, примерно, 10 минут.

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

Ресурсы могут быть взяты игроком, путем направления им к генератору сборщиков.
Сборщики могут взять из генератора столько ресурсов, каково их(этих самых сборщиков) качество, либо все ресурсы,
если в генераторе их меньше, чем могут взять сборщики.
В генераторе, соответственно, ресурсов не останется.

Игрок имеет первоначальный капитал,
на который он может построить несколько сборщиков ресурсов(3-4 сборщиков),
либо улучшить их качество(возможность брать/переносить больше) (1-2 улучшенных сборщика).
В принципе, ресурсы, потраченные на улучшение в 2 раза одного сборщика, стоят еще одного сборщика.
Большого отличия тут нет, либо строить 2, либо одного навернуть в два раза.

Игрок может знать сколько в каждом генераторе ресурсов, только если он его вычистит под 0.
После того как генератор очищен полностью, следующий посетивший этот генератор сборщик (возможно, другого игрока) ничего не возьмет,
или возьмет 0.0x процента от своей вместимости, если ему повезет, и генератор что-то сгенерирует как раз в этот момент.

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

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

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

Сразу, возможные проблемы -
1. Наши сборщики ходят по списку. Посещение генераторов получается неудачное,
часто посещаем те, которые уже пусты.

2. Мы видим, что генераторы в 10 часах пути далеко от всех игроков, идем туда, возвращаемся через 20 часов,
хотя могли бы за эти 20 часов обежать все ближайшие 10 раз и если в среднем получаем с них более 10%, то это уже выгоднее.
А если еще с дальних не полными вернулись..

У меня есть идея по решению, связанная с задачей коммивояжера, но хотелось бы послушать как еще можно оптимизировать прибыль :)


 
Думкин ©   (2012-09-24 13:16) [1]


> Существует игровой мир, на плоскости представляет из себя
> квадрат, примерно 500х500, но замкнут в 3d.
> т.е. пойдя в любом из 8ми направлений(N,NO,..,NW) придешь
> в эту же точку.

Это тор, бутылка Клейна или что?


 
КряКря   (2012-09-24 13:22) [2]


> Это тор, бутылка Клейна или что?


Это
 

> TCoord = (0..499);
> ...
> X: TCoord;
> Y: TCoord;


с переполнением.


 
Думкин ©   (2012-09-24 13:54) [3]

Значит тор.


 
AV ©   (2012-09-24 14:05) [4]

Думаю, это тор
крайней точки карты, шаг с доски приведет в точку с противоположного конца


 
AV ©   (2012-09-24 14:06) [5]

идея два, тупо

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

Отдельно считать цели, когда вернулись со 100%% уловом.
Тут же посылать по таким повторно.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.099 c
15-1332512911
Pit
2012-03-23 18:28
2013.03.22
C# и генерирование TLB


15-1337084902
alexdn
2012-05-15 16:28
2013.03.22
Так что там с шаттлами?


2-1347989696
vegarulez
2012-09-18 21:34
2013.03.22
синхронизация потока.


15-1336227120
KilkennyCat
2012-05-05 18:12
2013.03.22
TImage - мини-фотошоп


15-1347612790
LDV
2012-09-14 12:53
2013.03.22
Управление флагами в InnoSetup





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский