Diskuze: Spolecny projekt
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.


David Hartinger:21.3.2013 10:45
Taky mě to napadlo Ale
tady by šlo jen o simulaci. Zezačátku by se mohl zobrazovat 2D řez tím
polem, případný převod do 3D by neměl být těžký, jde jen o
vykreslování krychlí.
Kit:21.3.2013 10:51
Ta ovce by se mohla současně tvářit jako tráva pod ní. I vlk by mohl běhat po trávě. Máme přece polymorfismus a můžeme tak zůstat ve 2D...
David Hartinger:21.3.2013 10:55
A co jim dát spíše náhodný pohyb po mapě? Já bych je asi fakt nechal nějak mutovat. Vlk chodí, má nějaký health, snižuje se hladem, každý krok mu ho sníží o 1, když potká ovci, zvýší se mu health a sežere jí. Jedinec co se dožije určitého věku se může množit, ještě nevím, jak by se získala nová evoluční vlastnost...
David Hartinger:21.3.2013 10:56
Třeba by se hodilo randomem že vlk může od nějaké generace létat nebo
tak. Tím by mohl i na ptáky. Jsem docela zvědavý co by pak vzniklo
Kit:21.3.2013 11:16
To by byl asi nejtěžší úkol, jak stanovit životaschopná pravidla pro mutaci.
Přemisťování po mapě je však už narušením principu buněčného
automatu. To by se už muselo asi řešit ve dvou vrstvách nebo zrodit vlka na
novém místě (kde byla ovce) a na původním nechat trávu nebo ještě lépe
hnojivo
Mrtvá buňka sousedící s hnojivem by náhodně ožila jako trávník a tím by se cyklus uzavřel.
lcet.m:21.3.2013 12:09
Ehm, můžu se zeptat, k čemu by taková aplikace byla dobrá? Že soubor nějakých pravidel vyplivne nějaký výsledek asi všichni vědí i bez ní, ale žádnou skutečnou evoluci to ani zdaleka nenapodobuje. Evoluce je evolucí právě tím, že nejsou žádná pravidla "vlk + ovce = sežraná ovce + nažraný vlk".
To uz vypada trochu jako SPORE, zna tu hru? Ale bylo by to hooodne dobry
A treba tam dat i to, ze vlci ziji
ve smeckach, ovce zas ve stadech, coz je to same, jen smecka ma vzdy vudce, coz
je nejsilnejsi samec ve smecce
a tak dale
urcite bychom se a na tom mohli poradne vyblbnout
David Hartinger:21.3.2013 13:23
Jde o ty mutace. Nebylo by tam naprogramované že vlk sežere ovci, ale že pozemní masožravec s určitou sílou sežere pozemního býložravce, kterého potkal. Simulace by ukázala, jak by populace vypadala třeba za milion let, které druhy by vyhynuly a které vznikly jako úplně nové. Nenapadá mě teď jak by se mutace dělala, ale určitě byuchom něco vymysleli. Třeba by jsi zjistil, že za milion let bude vše pod mořem a vládnout bude kolonie býložravých ryb. V tom je to kouzlo a zároveň to závisí na náhodě pohybu a počáteční konfiguraci mapy.
Kit:21.3.2013 13:43
Tou buňkou nemusí být jen jedinec. Může to být i stádo o určitém množství jedinců. A máme zde klasickou školní úlohu o králících a liškách, kdy se králíci množí exponenciálně, způsobují růst populace lišek, jejich přemnožením jsou zdecimováni králíci, následně vychcípají lišky hlady...
Na jednom políčku mohou být umístěny různé populace různých živočichů, které budou interagovat nejen s živočichy na svém políčku, ale i s těmi na sousedních políčcích. Při přemnožení na svém políčku se populace může rozdělit na sousední políčka, kde možná ...
lcet.m:21.3.2013 14:01
Jenže evoluce je právě postavená (stejně jako jiné úspěšné systémy, a na rozdíl třeba od států) na tom, že existuje velmi málo velmi univerzálních pravidel. Je to na delší diskusi na pomezí biologie a snad i filosofie, ale funkční evoluce rozhodně neoperuje s pojmy jako "stádo", "býložravec" atd...
Pro simulaci funkčního systému, který umožní vznik nějakých nových "druhů", musí být jen dobře stanoven způsob, jak hodnotit úspěšnost jedince (a co to vlastně je v přírodě - fyzická síla? - asi ne, leckterý hmyzák přežívá úspěšněji než třeba lev -> ???), která souvisí se schopností předat půlku svojí genetické informace dál. Do toho určité (opět ???) procento mutace, které umožní vývoj do nových směrů. A hodně, opravdu hoooodně cyklů, po kterých se snad něco ukáže. Ale bude to vůbec něco zajímavého? Až uvidíme, že po 10n generací je nejhojněji zastoupen druh, který v našem umělém prostředí má třeba posloupnost pohybů vlevo->vpravo->vpravo->vpřed->vpřed, budeme vědět jen to, že v našem umělém prostředí je tohle asi nejlepší strategie k něčemu.
Problém je, že my můžeme pomocí gentických algoritmů zkoušet řešit nějaké jasné úkoly - jak správně rozsekat kus plechu tak, aby zbylo co nejméně odpadu, sestavit učitelskému sboru rozvrh atd..., ale těžko můžeme simulovat život, když nevíme, co je vlastně jeho cílem.
Osobně bych na genetické algoritmy měl jiné nápady, ale předem říkám, že toho se účastnit nebudu, protože nevěřím ve funkční výsledek:
1.) Automatický odhadce cen - program parsuje po netu nasbírané nabídky např. aut. Uchovává co nejvíce paramterů a snaží se "vyšlechtit" algoritmus na stanovení ceny.
2.) Generátor regexů - z velkého vzroku vstupů a požadovaných výstupů postaví regex
Jinak ale je to strašně zajímavé téma, kdo má hodně času a analytický mozek, ten má určitě malou šanci vymyslet něco zajímavého... http://www.obitko.com/…-algorithms/
Kit:21.3.2013 15:54
Tady ale nejde o zkonstruování věrného simulátoru života. Stačí vyjít ven a máme kolem sebe skutečný život.
Viděl jsem i zajímavý simulátor života virů v počítačovém systému. Vzájemně si přepisovali kódy, množili se, mutovali... To vše v 1D, jen to bylo na obrazovce zalomeno do více řádek, aby ta operační paměť mohla být větší.
Mediel:21.3.2013 16:10
Ostatne, nikdo nerika, ze
se bude delat toto... co se bude delat se rozhodne az pri hlasovani
Myslím, že by to spíš chtělo vygenerovat prostředí z několika
základních prvků
s pevně danými vlastnostmi. Vyšší objekty by se tvořily už jen kombinací
základních prvků
a tím by byla zachována integrita prostředí vzhledem k pravidlům.
Na začátku by se řeklo, které vlastnosti bude prostředí
vůbec vyhodnocovat ( váhu, barvu, skupenství..) a prvky by pak definovaly
jejich hodnotu. Prvek by mohl nést kousek algoritmu o určité velikosti.
Algoritmus prvku by ovšem pouze přistupoval k vlastnostem, kterými prvek
může manipulovat. Prvek by tak měl prostě přístupová práva (Read
Write)
například ke změně své barvy a ke čtení barvy sousedního prvku.
Kit:21.3.2013 16:13
Jasně, dokonce se ani nebudu účastnit samotného hlasování, protože v C# nedělám. Prostě jsem jen nadhodil, co by mohlo být zajímavé.
TomBen:21.3.2013 16:18
Řekl bych, že klidně hlasovat můžeš. Vzhledem k tomu, že výsledek
bude veřejně dostupný, je zcela košer pro každého člena, aby
hlasoval,
jaký projekt bude prezentován coby společný devbookovský. Nebo ne?
BeNijo:21.3.2013 16:43
To by taky nebylo špatné, co kdybychom udělali těch projektů více, můžeme začít lehčími a postupně přidávat.
David Hartinger:21.3.2013 16:46
Vymyslelo by se několik základních vlastností a jednotylivé organismy by je měly přiřazené (býložravec = true/false, masažravec... atd.) Myslím, že by to mohlo házet zajímavé výsledky a jak již jsem řekl, kdyby se některému druhu třeba zadařilo přežít 100 generací, dostal by random novou vlastnost. Minimálně hezké pokoukání si myslím. Nabušit různé podmínky pro organismy při jejich střetnutí na základě daných vlastností obou organismů by nemělo být tak těžké.
EDIT: Představ si, že vyhrává lev. Po 100 generacích decimuje souš a dostane vlastnost dýchání pod vodou. Začne chodit do vody, kde zatím někdo umírá hlady, ten začne žrát lva, přežívat a dostane schopnost jít na souš. Něco podobného se odehrává i ve vzduchu atd. Např. schopnost pojídat hmyz budou mít jen někteří živočichové, tak definuji sílu pavouka, který je slabý, ale někdo ho neumí sníst.
EDIT 2: A nejvíce cool by bylo kdyby se začalo v moři jako když začíná život a sledovat, jak se postupně rozšiřuje život a jaké nabývá formy.
David Hartinger:21.3.2013 16:46
Minimálně zde padlo několik zadání, co by se daly použít pro placku
Machr
Jen ještě taková malá vsuvka, když se tu nedávno strhla taková hádka:
http://en.wikipedia.org/…arp_and_Java
článek je aktualizovaný: 26 March 2013 at 18:53. \
A ještě jedna další čistě osobní zkušenost s C# a Javou. Dělám v obojím, protože musím a mám nějaká pozatky:
Pohled na IDE:
Visual Studio je jednoznačně na špičce, pak dlouuuuho nic, pak IntelliJ
Idea.
C# byl inspirován Javou a V podstatě je to o dost vylepšená Java. Krom toho
na C# neustále vychází nové verze Ostatně C# si sebral z ostatních jazyků jen to nejlepší
Další osobní postřeh, Java je dost ukecaná, například C# má eventy a
delegáty, v Javě se to řeší vnořenýmí třídami, které třeba
implementují jednu metodu. Jasně, dosáhneme stejného výsledku jako v C#,
ale v Javě je to daleko méně přehledné a výrazně delší kód.
Generika jsou lepší u C# (propojení s nativním kódem, systém knihoven) v
Javě je to takový Kočkopes.
Dále .Net Framework je celkem konzistentní což se o Javě říct nedá. C#
má LINQ, dynamické typování.
Ještě z5 k rychlosti: Samotné IDE v Javě jsou poměrně pomalá zato Visual
Studio a dokonce i ten SharpDevelop se chovají velmi svižně. Samozřejmě
nemohu tvrdit, že je to Javou, ale byla by to velká náhoda, kdyby to bylo
něčím jiným, protože těch Java IDE je více a všechny jsou pomalé.
A spousty dalšího...
Fugiczek:28.3.2013 14:35
Nechci vyvolavat flame, ale u javy nove verze vychazeji taky a casteji nez u C#, navic u C# posledni velka zmena byla kdyz se pridalo LINQ a to je uz nejakej ten patek, u javy jsou velke zmeny stale a tento rok s Javou 8 budou obzvlast velke zmeny. U javy nativni kod taky nacpes, napriklad jsem si delal WinAPI. Navic nedavno jsem si vsiml ze v jave muzes spustit i scriptovaci jazyky jako napriklad JavaScript primo v kodu. U tech IDE nevim, pouzivam IntelliJ IDEA a jsem s ni hodne spokojeny, nic co by me brzdilo pri praci jsem nepoznamenal.
David Hartinger:28.3.2013 14:37
On je moderátor, si tu hádku pak přesune
Jinak IntelliJ je dost rychlé, to samé PHPStorm. NetBeans je pomalý
protože je blbě napsaný, není to chyba Javy A C# nemá dynamické typování,
var je na něco jiného.
C# je jako jazyk mnohem dál, to jsi uvedl správně. Na druhou stranu někdy mi Java přijde čistší, C# má té syntaxe už nějak moc. Co mě na Javě štve je neschopnost komunity pochopit, že by aplikace v ní vytvořené měly běžet na Windowsech, že lidé chtějí ikonky a že chtějí look and feel z operačního systému. Každou chvíli mi někdo píše jak otevře jar, to je prostě smutné, přitom by stačilo tak málo.
Mediel:28.3.2013 14:38
IntelliJ IDEA je nejelpsi IDE pro Javu o tom neni sporu... Ale VS je proste
VS. Vseobecne, koukal jsi na ten odkaz Wiki? Mas to tam vsehcno velmi pekne
rozepsane Jen cist
Fugiczek:28.3.2013 14:42
S ikonkama asi nic nenadelas, jedine ze si JAR zabalis do EXE, ale look and
feel operacniho systemu tam je
Mediel ano kdysi jsem na to koukal, stejne se mi furt libi vic Java,
je to muj osobni nazor ale C# vypada takovej zmatenej, jinak hromadu minusek
(cervenych policek) zmizi s Javou 8
Lukáš Hruda:28.3.2013 14:54
K tomu otevírání... mě zase vadí programy napsané v C#... jednoduše,
skoro žádný mi nefunguje. Vždy mi to buď zahlásí, že mi v počítači
něco chybí, nebo většinou, což je ještě horší, program prostě spadne,
bez jakékoliv hlášky. Že mi v počítači něco chybí mi dojde, ale co a
proč to není přibalené v archivu s exe souborem? Java mi fungovala vždycky,
stačilo mít interpret. Mimochodem, .NET nainstalovaný mám, tím to není
David Hartinger:28.3.2013 14:59
A čím jiným by to bylo?
Pokud je program rozumně napsaný třeba pro .NET 3.5, který je na většině
počítačů, jede všude a nic doinstalovávat nemusíš.
Kit:28.3.2013 15:27
Nejlepší IDE je žádné IDE
Dobrému programátorovi stačí dobrý textový editor. Znám jen dva kvalitní editory.
Luboš Běhounek Satik:28.3.2013 15:39
Dobrému programátorovi stačí poznámkový blok a může psát rovnou opkódy assembleru...
Dobrému programátorovi vhodné IDE usnadní práci, jen ho ten programátor musí umět využít.
Luboš Běhounek Satik:28.3.2013 15:41
Pokud máš .net framework a .net aplikace ti padaly, tak ti třeba chyběla
některá jiná knihovna, třeba xna aplikace bez xna knihoven jen spadne a nic
smysluplného nenahlásí, to je jedna z věcí, co se jim v ms moc nepovedla
Kit:28.3.2013 15:50
Jenže jsem dosud nenašel dobré IDE. Dobrý editor usnadní práci lépe než IDE. Například Intellisense je sice patentovaná technologie Microsoftu, ale ve Vimu mám lepší systém nápovědy, nemluvě o přetížených makrech, která jsem v jiných editorech nenašel.
Opravdu jsem jako dobrý editor neměl na mysli Poznámkový blok.
Luboš Běhounek Satik:28.3.2013 15:56
Visual studio je asi nejlepší IDE, co jsem zatím používal. Navíc do něj lze psát pluginy, pokud ti něco nevyhovuje.
Kit:28.3.2013 15:58
Visual Studio mi na PC nejede. Myslím si, že 256 MB RAM bude pro něj asi málo.
Kit:28.3.2013 16:11
Jo a do Vimu si také píši vlastní pluginy a šablony. Už jsem si napsal i jeden plugin v Javě a funguje bezvadně. Většinou však použiju některý ze speciálnějších jazyků.
Luboš Běhounek Satik:28.3.2013 16:27
Nějaké starší verzi VS by možná 256 MB stačilo..
To se docela divím, že když máš 256 MB RAM využíváš k psaní
pluginů javu, která žere z většiny programovacích jazyků asi nejvíc
paměti
VS možná nemá nejlepší intellisense, ale spousta věcí (jako třeba debugování) jsou tam bezkonkurenční.
Kit:28.3.2013 16:32
Java mi na tom NTB běhá normálně. Pro psaní pluginů ji však běžně nepoužívám, protože mám dostatek lepších nástrojů. Jenže pokud potřebuješ napsat plugin na reflexi v Javě, tak asi nic vhodnějšího než Java nebude...
Mediel:28.3.2013 16:35
Me se intelesense zda prave vyborna ve VS...
Pošlu vám malou ochutnávku té mojí hry kluci. Kdybyste se rozhodli dělat právě tu. Zopakuji, že mám komplet scénář a graf. návrhy.
Mrtvé slunce
Úvodní obrazovka: "To, co vidíme, co tvoří naše těla a věci, které
nás obklopují, nazýváme barionová hmota.
Ta tvoří pouhých 5% vesmíru. Je směšné myslet si, že víme, kde
jsme.
Protože nemáme ani tušení, co je teď kolem nás." Fade...
Budu posílat jen takové fragmenty, abyste věděli o čem to asi bude.
Inventář: Kompas se při změně lokace pomalu natočí an správný směr. Ve světě odrazu kompas nefunguje a stále pomalu rotuje.
Přístroj, přepínací den a noc
"Přejel jsem prsty po její fotce ve snaze ještě jednou pohladit její vlasy a uchopit zbytky ......"
Na omšelém stole leží nůž na dopisy a starý psací stroj. V něm je stránka s básní mrtvého muže.
...
Husí kůže,
A nový pocity, co už zmizely.
Stejně jako ty odpoledne u televize,
Když jsem měl ještě místo hlavy časovanou bombu.
Ale teď po tom všem,
Někde v dálce houká sanitka.
Projíždí podzimní insomnií.
A v závějích modrýho listí,
Hledá podobný lidi, jako jsem já.
Lokace, kde v pravé polovině vede cesta až ke srázu dolů. V druhé polovině lokace není nic, jen tma. Na srázu stojí strom s havranem. Když hráč do lokace přijde, havran zakráká. Za dne havran zmizí.
Před kaplí je hromada modrého listí. U kaple stojí socha s krumpáčem.
U nemocnice rostou zvonky, je jich tam několik trsů. V hudbě na pozadí se ozývá zvonění (nějaká melodie). Když se na ně klikne: „To je divné, jakoby ty květiny opravdu zvonily. Dříve jsem hrával na klavír, na představení jsem také poprvé poznal jmeno_divky. Myslím, že dokážu melodii přepsat“ -> Listina s melodií.
Na oltáři leží stará oprýskaná televize. Když se na ni klikne, zvětší se její obrázek přes celou obrazovku a na ovládací části je díra, kam lze vložit křížek buď nahoru nebo dolů. Podle toho se potom z televize ozve příslušná věta (v ní naznačený číselný kód do brány ve slunci)
V kapli jsou varhany. Když se k nim přistoupí, zobrazí se klávesy, na které lze hrát myší. Podle not (listiny zvonků) zahrát melodii (může u toho být nákres s očíslovanými klávesami). Po zaznění poslední tóniny se ozve rána a ze střechy spadne korouhev - „Poslední tónina rozkmitala klenbu budovy, myslím, že něco upadlo“. Při hraní na klávesy je v pozadí slyšet pomalý tlukot srdce, po dohrání hráč prohlásí: „Přísahal bych, že jsem slyšel slabý tlukot srdce. Zdá se mi to nebo začínám šílet?“.
...Lze rozbít krumpáčem a uvnitř leží ve výklenku hvězdářský přístroj. Dá se do něj vlézt, je tam několik osiček a rozházená zubatá kolečka (4). Další 3 kolečka jsou schovaná v kostele (někde kus vykukuje) a poslední na záchodech (u mísy). Ty se musí nasadit na osičky podle rozmístění hvězd na obloze u jezera (orion)
...
"Hned teď zjišťuji,
že v nitru slunce je mrtvý svět.
Med teče z injekční stříkačky,
otrávené žvýkačky osvěží dech."
...Při napětí 12ti milionů voltů a s frekvencí střídání polarity nekolikatisíckrát za sekundu se mi podařilo vytvořit magnetické pole s tak extrémní indukcí, že narušila časoprostorové kontinuum. Při experimentu ze všeho kovového v okruhu 200 metrů sršely jiskry. Chvíli poté, co jsem vstoupil do portálu se zařízení k příjmu volné energie na střeše pod tíhou extrémně vysokého proudu roztrhlo. Předpokládám, že jsem i se svou laboratoří a přístroji uvízl v nějaké mezidimenzi. Bude potřeba použít supravodivé materiály chlazené kapalným dusíkem. Snad se mi odtud podaří dostat. Nikola Tesla, 12. září 1920
Na podstavci leží socha hlavy (taková ta alchymistická, kdy si lidi mysleli, že určitá část mozku má na svědomí chování/smysli jedince), po kliknutí se zobrazí následující zvětšenina...
Pomocí soustavy zrcadel je třeba přenést v plynárně měsíční svit ze zamřížovaného okna do druhé místnosti. Jedno zrcadlo leží na zemi roztříštěné, je ho potřeba složit (hlavolam vajíčka).
".. Konečně v jejím objetí,
tiskne mě a líbá,
jak nikdo před tím
na světě..."
Jestli vás to zaujme, můžu poslat mnohem víc, ale nechci to zveřejňovat
když si nebudu jistý, že se na tom bude pracovat
David Hartinger:28.3.2013 20:19
Ano, hra je prokládána poezií, ta se sbírá do vazby v inventáři.
Zobrazeno 50 zpráv z 369.