-
Data: 2013-04-16 10:47:41
Temat: Re: Podpis cyfrowy większej ilości podmiotów
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu poniedziałek, 15 kwietnia 2013 23:23:50 UTC+2 użytkownik Edek napisał:
> Bo pokazałeś, że można gorzej?
Bo pokazałem rozsądną implementację :)
> A dlaczego ta ma być intuicjonistyczna? Kolejne słowo, które jednak
> jest dość subiektywne.
Właśnie mało ścisły temat, trudno powiedzieć co jest intuicyjne, co jest
zepsute, a już w ogóle nie wiadomo co jest optymalne. Za tym ze ta jest
intuicyjna przemawia fakt, że wielu programistów do problemu podeszło w
podobny sposób. Potem każdy z nich dodał jakieś usprawnienia. W dalszej
kolejności ktoś zebrał pomysły wielu ludzi i zaimplementował w jednym
programie. Dopiero w jeszcze dalszej były próby reprezentacji bitowej, a z
powodu znanych usprawnień do reprezentacji tablicowej, reprezentacja
bitowa wypadała gorzej, zwłaszcza na 32bitowych komputerach. Różne
sprytne usprawnienia do reprezentacji bitowej pojawiły się stosunkowo
niedawno, a już naprawdę świeża jest próba zebraniach wszystkich usprawnień w
jednym programie. Jeśli dla Ciebie, jako dla jednego programisty, jest
to intuicyjny proces, to oznacza, że jesteś lepszy od tych wszystkich
programistów razem wziętych, którzy przyczynili się do obecnego poziomu
reprezentacji bitowej.
> Strasznie zakodowane...
Rozumiem że "strasznie" używasz w znaczeniu "implementacja zepsuta". Wiele
osób taką reprezentację podało jako pierwszy pomysł. Po zastanowieniu podali
różne usprawnienia. A po próbach z reprezentacją bitową program działał
wolniej...
> czy taki kod szachowy uwzględnia domyślną
> liczbę bierek czy też głównym nurtem idą różne nieco egzotyczne
> sytuacje typu - powiedzmy - trzy wieże po jednej stronie?
Trzy wieże po jednej stronie to akurat nie egzotyczna sytuacja - ale to
mało ważne w naszej dyskusji. To jest po prostu kod rozsądny, jaki
zaproponuje na początku wielu programistów. Niektórzy dodadzą jakieś
usprawnienie, niektórzy kilka usprawnień, jedna osoba raczej nie dojdzie
sama do wszystkich znanych technik.
> > Więc jedna instrukcja warunkowa daje podobny efekt jak cały kod powyżej:
> > if( bierki[DAMA] & maski_atakow[x][y] )
>
> Nie wiem ile grasz w szachy, ale to właśnie jest intuicjonistyczne.
Ale to jest malutki przykładzik. Z reprezentacją bitową są inne problemy i
jest tych problemów znacznie więcej niż z reprezentacją tablicową. Naiwne
zakodowanie na reprezentacji bitowej z powodu innych problemów działa
gorzej niż wyśrubowana implementacja na tablicy pól/bierek.
> Patrząc na szchownicę widzi się właśnie całe formy ruchów a nie
> kombinuje które pole jest które i czy wieża z damą się bronią
> nawzajem, czy tylko król wraz z damą obstawia wieżę, ta pierwsza
> po przekątnej. Podobnie z wymianami.
Taki sam efekt daje zarówno iterowanie w jakimś kierunku szachownicy
jaki i test maskami bitowymi. Chodzi o to, która implementacja jest szybsza.
> W mojej pracy nawet gdyby się okazało, że da się coś zrobić 10x szybciej
> ale trzeba spędzić na kodem tyle czasu to po prostu to się _zazwyczaj_
> nie opyla.
Z tym się nie sprzeczam że to drogi proces.
> > Napiszę jeszcze raz to samo, może programistom często się tylko wydaje
> > że są w okolicach tych 10% od optimum?
>
> Może Tobie się wydaje, że każdy kod można przyspieszyć 2-4x?
Nie chodzi o to co mi się wydaje, tylko o to co widziałem. A widziałem jak
wielu programistów podeszło do problemu. Ich podejście było na oko
2-4 razy gorsze niż optymalne.
> Cieszę się Twoim szczęściem, ale skąd pomysł, że wszyscy mają wciąż oczy
> zamknięte? Używanie masek bitowych robię "z zamkniętymi oczami".
To nie pomysł, to obserwacja. I nie na wszystkich, ale na pewnej
próbie :) Każdy może wziąć jakieś zadanie programistyczne, napisać
swoją implementację, a dopiero potem porównać z najlepszą znaną
implementacją na świecie. Jaki odsetek programistów będzie w 10% od
najlepszej znanej ( 10% od najlepszej znanej, to niekoniecznie 10% od
optymalnej ).
> Heh, rozumiem że to takie testowe turnieje.
Tak, jak się nie ma prywatnego klastra, to można jedynie testować
implementacje/algorytmy na ultra-krótki czas.
> Grałem gdy miałem z 11 lat w zarówno w pełne jak i 3-4 minutówki, ale 5s
> to tylko maszyny. Swoją drogą przestałem grać gdy mnie ograł 9-latek i
> zrozumiałem, że tak na poważnie w lidze szachowej to ja nie mam szans.
U mnie trening działał. Gdy regularnie grywałem, to z miesiąca na miesiąc
grałem lepiej. Gdy odstawiałem szachy na dłuższy czas, to znowu grałem
słabo. Potem interesowałem się tylko szachami komputerowymi.
Pozdrawiam
Następne wpisy z tego wątku
- 16.04.13 12:49 bartekltg
- 16.04.13 15:01 Miroslaw Kwasniak
- 16.04.13 19:10 AK
- 17.04.13 00:36 Edek
- 17.04.13 09:48 M.M.
- 17.04.13 10:30 firr kenobi
- 17.04.13 11:21 M.M.
- 17.04.13 12:21 firr kenobi
- 17.04.13 12:29 firr kenobi
- 17.04.13 13:01 M.M.
- 17.04.13 15:07 firr kenobi
- 17.04.13 15:35 M.M.
- 17.04.13 16:21 Edek
- 17.04.13 16:25 Edek
- 17.04.13 16:53 M.M.
Najnowsze wątki z tej grupy
- Xiaomi [Chiny - przyp. JMJ] produkuje w całkowitych ciemnościach i bez ludzi
- Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Jak kupić pierwsze mieszkanie? Eksperci podpowiadają