Перейти к публикации
  • Сейчас на странице   Всего пользователей: 1   (0 пользователей, 1 гость)

Hed-kun

Программирование, т. 2

Рекомендованные сообщения

ты не написал весьма важную вещь

Нужен ИИ или нет

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

я имел в виду нужно ли делать компа в принципе.

Можно сделать тупо на 2 юзеров :trollface:

про самый крутой уровень сложности увы ничего не слышал :sad:


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

Поделиться сообщением


Ссылка на сообщение

тут большинство считает, что для того, чтобы тим лидом быть достаточно 3 года отработать на поддержки какого-то говна ii.gif


Колы я выросту - то хочу буты такым як я

5c8bbc85b99e.gif

 

годные смайлы

Поделиться сообщением


Ссылка на сообщение
Гость 2poy_nyasha

Еще в школе пробовал понять теорию игр. Ничо сверхсложного.

 

Можно перебрать все варианты, но это не круто и школьник сможет. Нужно считать именно варианты ходов, шанс на победу и т.д. Чтобы можно было безболезнено увеличить до 4*4 5*5 и т.д.

 

При этом тупо рандом и просто защита это тоже не варинт. Игра должна быть идеальной.

 

И да я щитаю что чтобы стать тимлидом надо хорошо сосать. big170.gif

Поделиться сообщением


Ссылка на сообщение

варианты ходов, шанс на победу

безболезнено увеличить до 4*4 5*5

:avtorklif:

Поделиться сообщением


Ссылка на сообщение
Гость 2poy_nyasha

чо тебе не нравится, пидарас?

Поделиться сообщением


Ссылка на сообщение

ты собрался ИИ делать такой, чтоб он потом ещё и в шахматы или в старкрафт выигрывал умел или чего?

и как ты себе представляешь в крестики-нолики безболезненное расширение до 4х4/5х5?

нет, даже не так: а что вообще получится из крестиков-ноликов если их расширить?

Поделиться сообщением


Ссылка на сообщение
Гость 2poy_nyasha

пройтись циклами

посчитать для каждой ячейки вероятность проигрыша

или иначе посчитать расстояния между некими (всеми) крестиками (ноликами) и посчитать вероятность их составления в выигрышную линию, если таковая имеется, то почитать как это устранить, получить массив результатов

отдельно считать возможность победы компьютера, получить массив результатов

 

если есть схождения в неком (неких) результатах то выбрать его (наиболее удобное) и ставить туда нолик (крестик)

 

 

как минмум что-то такое

Поделиться сообщением


Ссылка на сообщение

если ты хочешь делать максимально сложный как для крестиконоликов ИИ, то можно и так сделать, только он всё-равно не сможет безболезненно научиться в 4х4 или 5х5, т.к там другая сетка

а спросил про 4х4 и 5х5 я в основном потому что это уже хуйня ебаная, а не крестики нолики

 

а для обычного "непроигрывающего" бота достаточно прописать статические комбинации типа 1Х центр->1О любой угол->2Х любой соседний к 1о угол->2О закрывает второй соседний угол->3Х между 1о и 2о->3О не даёт забрать линию; и так далее в рандомной ротации по сетке зависимо от выбраных углов

Поделиться сообщением


Ссылка на сообщение
Гость 2poy_nyasha

ну это самый очевидный вариант - напролом, так не интересно

 

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

 

тут точно не описать все ходы

 

 

какие тут алгоритмы есть?

Поделиться сообщением


Ссылка на сообщение

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

Поделиться сообщением


Ссылка на сообщение
Гость 2poy_nyasha

ну мне кажется самый банальный вариант это после хода соперника считать возможность съесть эту фигуру безболененно или с потерей не меньше чем эта фигура

при этом исследовать возможность съесть этой фигурой нашу фигуру

 

если такая возможность имеется, надо обдумать как съесть эту фигуру после того как она съест нашу, если этого не избежать

 

если нет угроз надо реализовывать какую-либо стратегию, можно на рандоме, но учесть что ладья и король это важные фигуры

 

Шахматы на жс

for(B=i=y=u=b=i=5-5,x=10,I=[],l=[];l[b]="ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE".charCodeAt(B)-64,B++<120;I[b-1]=B%x?B/x%x<2|B%x<2?7:B/x&4?0:l[i++]:7);function X(c,h,e,s){e^=8;for(var o,S,C,A,R,T,G,n,N=-1e8,O=20;++O<99;)if((o=I[T=O])&&(G=o^e)<7){A=G--&2?8:4;C=o-9?l[61+G]:49;do if(!(R=I[T+=l[C]])&&!!G|A<3||(R+1^e)>9&&G|A>2){if(!(R-2&7))return 78-h<<x;n=G|(e?T>29:T<91)?o:6^e;S=(R&&l[R&7|32]-h-G)+(G?0:n-o?55:(A<2)+1);if(c>h||1<c&c==h&&S>2){I[T]=n;I[O]=0;S-=X(c,h+1,e,S-N);if(!(h||c-1|B-O|T-b|S<-1e4))return W(B=0),e&&setTimeout("X(2,0,8),X(1,0,8)",50);I[O]=o;I[T]=R}if(S>N||!h&S==N&&Math.random()<.5)if(N=S,c>1)if(h?s-S<0:(B=O,b=T,0))return S}while(!R&G>2||(T=O,(G||A>2|(e?O>78:O<41)&!R)&&++C*--A))}return N}function W(){i="<table>";for(u=18;u<98;i+=++u%x-9?"<th width=60 height=60 onclick='I[b="+u+"]>8?W(B=b):X(1,0,0)'style='font-size:50px'bgcolor=#"+(u-B?u*.9&1||9:"d")+"0f0e0>"+(I[u]?9808+l[67+I[u]]:160)+";":u++&&"<tr>");document.body.innerHTML=i+"</table>"}W();

1кб кода

охуеть

Поделиться сообщением


Ссылка на сообщение

ну поле отрисовало, а играть как?


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

Поделиться сообщением


Ссылка на сообщение

нахуй не гуглить, если можно загуглить


ea9cfc2a8fd28fed94eac49d3e83bf58.gif

Поделиться сообщением


Ссылка на сообщение

тут большинство считает, что для того, чтобы тим лидом быть достаточно 3 года отработать на поддержки какого-то говна ii.gif

Вполне достаточно :buba: Я никогда не говорил что я крутой кодер. Крутые кодеры так и остаются крутыми кодерами. Я им даю задачи, они их блестяще реализуют и я могу даже не смотреть чо они там ебашут. Солюшен придуман, требования покрыты, спеки написаны, компоненты интегрированы, qa все затестили, премии выписаны. Мне этим интереснее заниматься чем 24х7 ебашить код. :tusila-zavodila: И зп значительно приятнее.

Поделиться сообщением


Ссылка на сообщение
Гость 2poy_nyasha

ну поле отрисовало, а играть как?

жмешь на белую фигуру и нажимаешь куда ее ставить

нахуй не гуглить, если можно загуглить

потому что интереснее самому придумать

суть то в алгоритме

Поделиться сообщением


Ссылка на сообщение

аххха, заебись

 

я проиграл 1кб кода :trollface:


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

Поделиться сообщением


Ссылка на сообщение

аххха, заебись

 

я проиграл 1кб кода :trollface:

Кстати, я тоже проебывал этому js-говну :avtorklif:

Поделиться сообщением


Ссылка на сообщение

для слоу объясните - как мне его запустить?

Поделиться сообщением


Ссылка на сообщение

return W(B=0),e&&setTimeout("X(2,0,8),X(1,0,8)",50);

:mameprivet:

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...