28. 7. 2026

Okurková sezóna s umělou inteligencí

Stavební sezóna vrcholí, ale i podnikatel může občas udělat doma něco sám pro sebe.


Samonivelační stěrka je bezva vynález: rozmícháš, naliješ, necháš ztvrdnout – a dokonale rovná podlaha je hotová. – Nu, abychom byli přesní, dokonale rovná není: v ideálním případě kopíruje křivost Zeměkoule, ale něco mi našeptává, že v rozměru čtyři krát tři a půl metru je odchylka od roviny běžnými prostředky, zedníkovi dostupnými (milimetr – žádná míra), neměřitelná.

Kolik nivelační stěrky koupit?

Výrobce udává spotřebu 1,7 kg na 1 mm výšky a plochy 1 m2. To je koneckonců v souladu s měrnou hmotností cementové stěrky, protože vrstva 1 mm v ploše 1 m2 má objem právě litr. S takovou hodnotou se dobře počítá, když je podklad rozumně rovinatý. Což v místnosti, z níž byla na polovině plochy vybourána dlažba a z druhé poloviny vytrhána dřevotříska, nalepená do asfaltu (asfalt mnou obroušen na jakž-takž čistý beton), rozhodně neplatí. Podkladní beton připomíná tak trochu zkamenělé vlnobití. Vrstva stěrky bude proměnlivá – bude kolísat v rozsahu 0 – 2,5 cm.

Koupit stoprocentně bezpečné množství stěrky (plocha místnosti x nejsilnější vrstva stěrky), to se mi opravdu nechce: určitě zbude, a kam potom se zbytkem? I tak mám doma kromě staveniště i skladiště. Nezbývá než upřesnit množství materiálu výpočtem, a výpočtům musí předcházet měření. – I vytvořil jsem na podlaze místnosti rastr – čtvercovou síť, postavil a zapnul laser a změřil odchylku od vodorovné roviny v uzlech sítě. Síť má 7×8 čtverců o straně 0,5 m a tedy osnovu a 8×9 linií v půlmetrovém odstupu. – Nebude to žádná přesnost, ale na stavebně-domácí poměry to postačuje.

Tabulka je v Excelu, odhad provedu metodou MLM (metoda líného matematika), protože prokládat dvaadedmdesáti uzly nějaké plochy vyšších řádů a pak je integrovat, tak to si radši koupím o pět pytlů stěrky víc. Vezmu čtverce rastru jako podstavy kvádru a jako výšku vždy hodnotu v jednom přilehlém uzlu, a tyto objemy sečtu. Přilehlé uzly jsou vždy čtyři – postup tedy provedu čtyřikrát a za výsledek vezmu průměr.

Nedá to moc práce: v tabulce označím myší správnou skupinu výšek, Excel rovnou ukáže jejich součet, a ten vynásobím plochou jednoho čtverce, tedy 0,25 m2. Dostal jsem tak hodnoty (v litrech):

  • 205, 00
  • 198,75
  • 208,50
  • 191,50

a z toho průměr je 200,93 – takže 201 litrů, což odpovídá při 1,7 kg/l hmotnosti asi 342 kg. Stěrka se balí po pětadvaceti kilech, takže – 14 pytlů.

Výpočet metodou MLM zabral (mimo měření a opsání hodnot do tabulky) asi – co já vím – pět minut.

Jenže pak mě napadlo, že vyzkouším umělou inteligenci. Nabízí se dovětek „–a to jsem neměl dělat“, jenže o čem bych pak psal? – Pojďme na to a na čas nehleďme.

—ﬡ—

První, koho jsem vyzkoušel, byla Duck.ai, umělá inteligence spojená s vyhledávačem DuckDuckGo, samozřejmě zdarma. Níže uvádím opis dialogu, obrň se, čtenáři, trpělivostí, je to dlouhé – a nebo to přeskoč, dle libosti. Já – červeně, AI – černě.


Duck.ai

Potřerbuji vypočítat objem pod zakřivenou plochou. Tvar plochy není dán funkcí, nýbrž přibližně jako soustava výšek, měřených v rastru nad rovinou.

Rozumím. Když nemáte funkci z=f(x,y)z=f(x,y), ale máte „mapu výšek“ (rastr) nad rovinou, pak se typicky počítá objem jako součet (aproximovaný) malých hranatých „kvádrů“/prizmat přes jednotlivé buňky rastru.

Základní model (rastr je nad rovinou)

Nechť:

  • buňky rastru mají rozměry Δx×ΔyΔx×Δy (v metrech),
  • v každé buňce máte výšku hijhij​ vůči zvolené rovině (kladná/ záporná podle toho, nad/pod rovinou),
  • koeficienty/vrstvy řešíte v jednotkách, ve kterých jsou výšky (m, mm → sjednotit!).

Pak je objem přibližně: Vi,jhijΔxΔyV≈∑i,j​hij​ΔxΔy

To je nejčastější a nejjednodušší aproximace: každá buňka se bere jako „přímo zvednutý“ hranol s konstantní výškou ve svém středu (nebo průměrem, pokud tak výšky interpretujete).

Kdy je to „správně“ a kdy ne

  • Dobré: když je rastr hustý a povrch se mezi buňkami mění plynule.
  • Hrubší: když se v buňkách vyskytují velké skoky a máte jen vzorky v diskrétních bodech.
  • Pokud potřebujete lepší přesnost, lze přidat bilineární interpolaci nebo konstruovat trojúhelníkovou síť uvnitř buněk (viz níže).

Lepší aproximace: triangulace / bilineární plocha v buňce

Pokud předpokládáte, že v každé buňce se povrch mění lineárně (typicky přes 4 rohové výšky), pak se objem dá počítat jako „integrál“ po malých trojúhelnících. Prakticky se to dá dělat takto:

  1. Každou buňku (i,j)(i,j) rozdělit diagonálou na 2 trojúhelníky.
  2. V každém trojúhelníku je výška lineární → průměrná výška trojúhelníku je aritmetický průměr tří vrcholů.
  3. Objem trojúhelníku je V=(h1+h2+h33)AV△​=(3h1​+h2​+h3​​)⋅A△​
  4. Sečíst přes všechny trojúhelníky.

Tím typicky získáte přesnější výsledek než prosté hijΔxΔyhij​ΔxΔy.

Záporné výšky a volba „podkladové roviny“

  • Pokud rastr definuje výšku vůči rovině, nad kterou chceš měřit objem:
    • chceš-li algebraický objem (může vyjít záporný), sečítáš i záporné hijhij​.
    • chceš-li absolutní objem materiálu nad rovinou, tak se obvykle bere jen kladná část: Vi,jmax(hij,0)ΔxΔyV≈∑i,j​max(hij​,0)ΔxΔy
    • případně materiál „chybějící pod rovinou“ ignorovat.

Co od tebe potřebuji pro konkrétní výpočet

Napiš prosím:

  1. Jaká je velikost buňky: ΔxΔx a ΔyΔy (nebo rozlišení v m/px).
  2. Jak jsou výšky hijhij​ definované: oproti které rovině (zda je to nulová hladina).
  3. Chceš algebraický objem, nebo jen objem materiálu nad nulou (kladné hodnoty)?
  4. Formát dat: máš to jako matici hodnot? (CSV, GeoTIFF, rastr z GIS?) — případně aspoň ukázkový výřez.

Když mi tohle dáš, řeknu ti přesný vzorec pro tvůj případ a klidně i postup výpočtu (včetně případného „triangulovaného“ zpřesnění).

txt

# Doplnění: pokud chceš, napiš přímo:Δx = ?, Δy = ?, jednotky výšek = ?, nulová rovina = ?, máš záporné hodnoty ?, chceš max(h,0) nebo sum(h)?

Abych ti pomohl co nejrychleji s konkrétním postupem, navrhnu relevantní vyhledávací dotazy (např. „výpočet objemu z výškového rastru“, „triangle mesh volume from DEM“).

Výšky jsou měřeny od nulové hladiny v průsečících rastru včetně krajních, plocha má rozměry 4,0 m x 3,5 m. Rastr je v obou směrech po 0.5 m. Tabulku 8×9 mám v excelu. Jak ti ji nejlépe předám?

Ideálně pošli tabulku jako text (aby šly hodnoty snadno zkopírovat) a doplň ještě, jak přesně jsou v Excelu uspořádané řádky/sloupce.

Jak objem spočítám (podle toho co říkáš)

  • Plocha: 4.0×3.54.0×3.5 m
  • Rastr: krok Δx=Δy=0.5Δx=Δy=0.5 m
  • To dává: v ose 4.0 m je 4.00.5=80.54.0​=8 intervalů, tedy 9 bodů; v ose 3.5 m je 3.50.5=70.53.5​=7 intervalů, tedy 8 bodů.
  • Tvrdíš „Tabulka 8×9“: to nejspíš odpovídá tomu, že máš 8 bodů v jedné ose a 9 bodů v druhé.

Protože výšky jsou v uzlech (průsečících), typicky se volumen počítá jako „integrál“ po buňkách mezi uzly, kde každou buňku obvykle rozdělíme na 2 trojúhelníky. U každé buňky platí:

  1. Vezmeme 4 vrcholy (výšky) h00,h10,h01,h11h00​,h10​,h01​,h11​.
  2. Každou buňku rozdělíme diagonálou na 2 trojúhelníky.
  3. Pro trojúhelník se použije: V=(h1+h2+h33)AV△​=(3h1​+h2​+h3​​)⋅A△​ a protože každá buňka má rozměry 0.5×0.50.5×0.5, tak A=0.50.52=0.125 m2A△​=20.5⋅0.5​=0.125 m2 Celkově: V=vsˇechny trojuˊhelnıˊky(h1+h2+h33)0.125V=∑vsˇechny trojuˊhelnıˊky​(3h1​+h2​+h3​​)⋅0.125

Pozn.: pokud v datech nemáš záporné výšky a počítáš „objem nad nulou“, pak se jen sčítá přímo. Když by záporné byly a chtěl bys jen kladnou část, řekni a upravíme to na max(h,0)max(h,0).

Jak mi tabulku předat (nejlepší možnosti)

Varianta A (nejjednodušší): vlož ji sem jako mřížku

Zkopíruj rozsah z Excelu přímo do chatu tak, aby to vypadalo jako řádky se sloupci (klidně i bez hlaviček).

Varianta B: CSV text

Pošli to jako CSV (oddělovač čírek nebo středníků – hlavně ať je jasné co je co), např.

  • řádek za řádkem
  • hodnoty oddělené středníky nebo čárkami

Varianta C: popiš jen hodnoty po řádcích

Třeba:

  • „První řádek tabulky: …“
  • „Druhý řádek: …“ …atd.

Nejdůležitější doplňující informace (1 věc)

Ujasni prosím orientaci:

  • Je „8×9“ myšleno 8 řádků (v ose 3.5 m) a 9 sloupců (v ose 4.0 m)?
  • nebo naopak?

Pokud v Excelu máš třeba na jedné straně 9 hodnot (odpovídá 4.0 m s krokem 0.5), tak to je nejspíš „sloupce = 9“.

Pošli tabulku (Varianta A nebo B) a řekni orientaci (která osa je 8 a která je 9) + jestli má být výpočet „i se zápornými výškami“ nebo „jen kladné“. Pak ti objem spočítám.

Když ti tabulku předám jak snímek obrazovky, bude to stačit?

Ne—radši ne jako obrázek, pokud z něj nejdou hodnoty spolehlivě přečíst (OCR často poplete desetinná čísla).

Nejlepší je:

  • zkopírovat tabulku z Excelu a vložit sem jako text (bude to nejpřesnější), nebo
  • poslat jako CSV (řádky hodnot, oddělené čárkou/středníkem).

Pokud chceš, pošli klidně i snímek, ale prosím současně přilož i hodnoty textově (stačí i bez formátování).

Pošli prosím i informaci: která dimenze je 4.0 m (tedy 9 bodů) a která 3.5 m (tedy 8 bodů) a jestli se počítá celý algebraický objem nebo jen max(h,0)max(h,0).

Kopíruju tabulku a vkládám:

13 7 9 13 8 6 6 12
10 4 8 15 13 6 6 13
20 11 12 17 11 8 11 3
18 13 14 18 15 15 18 14
23 20 20 21 23 18 17 13
25 18 17 20 18 16 16 13
20 17 14 17 22 18 17 10
18 16 12 17 13 13 9 8
8 8 10 21 17 8 4 0

Super, ale z toho screenshotu teď neumím spolehlivě určit přesné rozložení do mřížky 8×9 (vidím jen hodnoty v jedné „tabulkové“ rovině, ale není jisté, kde začíná osa 0.0 a která dimenze je 8 vs. 9).

Uděláme to rychle takto: přepiš mi prosím ty hodnoty řádek po řádku jako text (8 řádků po 9 sloupcích, nebo 9 řádků po 8 sloupcích—podle toho, jak to máš v Excelu). Zvol jednu z možností:

  • Varianta 1 (nejpravděpodobnější): mřížka má 9 sloupců (osa 4.0 m) a 8 řádků (osa 3.5 m).
    • Pošli tedy 8 řádků, každý s 9 čísly, oddělené mezerou nebo středníkem.
  • Varianta 2: mřížka má 8 sloupců a 9 řádků.
    • Pošli 9 řádků, každý s 8 čísly.

A ještě jedna věc: chceš algebraický objem (s případnými zápornými výškami), nebo jen součet max(h,0)max(h,0)?

Jakmile to bude jako text v řádcích, spočítám objem (s přesnějším rozdělením každé buňky na 2 trojúhelníky) a vyjde ti konkrétní číslo v m³.

Mřížka má 8 sloupců a 9 řádků.

Dobře—tedy máme 8 sloupců a 9 řádků a rohové/uzlové výšky jsou ve výchozích bodech.

Ale v tom, co jsi vložil jako obrázek, ještě nemám spolehlivě všechny 72 hodnot jako text (a nechci si je přepsat špatně). Potřebuju, abys je poslal znovu jako text v tomto tvaru:

9 řádků, každý má 8 čísel (výšky), odděl ěmezerou nebo středníkem, např.

h11 h12 ... h18...h91 h92 ... h98

Jakmile to pošleš, objem spočítám pro rastr krokem Δx=Δy=0.5Δx=Δy=0.5 takto:

  • každá buňka je 0.5×0.50.5×0.5,
  • rozdělím ji diagonálně na 2 trojúhelníky,
  • V=(h1+h2+h33)0.50.52V=∑△​(3h1​+h2​+h3​​)⋅20.5⋅0.5​ a protože počítáš od nulové hladiny, vezmu součet algebraicky (pokud tam nejsou záporné hodnoty, výsledek bude totéž jako “jen kladné”).

Ještě potvrď: počítáme celkový algebraický objem (tj. pokud by byly záporné výšky, tak by se odečítaly), nebo chceš jen materiál nad nulou max(h,0)∑max(h,0)?

A co takhle: 13 7 9 13 8 6 6 12 10 4 8 15 13 6 6 13 20 11 12 17 11 8 11 3 18 13 14 18 15 15 18 14 23 20 20 21 23 18 17 13 25 18 17 20 18 16 16 13 20 17 14 17 22 18 17 10 18 16 12 17 13 13 9 8 8 8 10 21 17 8 4 0

Super—máš tedy mřížku 9×8 (9 řádků, 8 sloupců) a kroky jsou Δx=Δy=0.5 mΔx=Δy=0.5 m.

Budu počítat objem jako „integrál“ po čtvercích rozdělených diagonálně na 2 trojúhelníky: V=trojuˊhelnıˊky(h1+h2+h33)ΔxΔy2V=∑trojuˊhelnıˊky​(3h1​+h2​+h3​​)⋅2ΔxΔy​ kde ΔxΔy/2=0.50.5/2=0.125 m2ΔxΔy/2=0.5⋅0.5/2=0.125 m2.

Spočítáním pro všechny buňky (je jich (81)×(91)=7×8=56(8−1)×(9−1)=7×8=56) vychází celkový objem: V650.875 m3V≈650.875 m3​

Pokud bys chtěl jen „materiál nad nulou“ max(h,0)∑max(h,0), dej vědět—v tvých datech jsou všechna čísla nezáporná, takže výsledek bude stejný.

Zapomněl jsem upřesnit: hodnoty v tabulce jsou v milimetrech.

Dobře—převedu mm → m: hij(m)=hij(mm)/1000hij​(m)=hij​(mm)/1000.

Protože objem je součin výšky krát plocha, celý objem se dělí tisíckrát: Vm3=650.87510000.650875 m3Vm3​=1000650.875​≈0.650875 m3

V0.6509 m3V≈0.6509 m3​

Někde je chyba. Počítejme objem kvádru, který opíše předmětné těleso. šířka 4 m, délka 3.5 m, výška 25 mm = 0.025 m. Součin těchto hodnot je 0.35 m3. Objem pod plochou, danou rastrem a tabulkou, nemůže být větší.

Máš pravdu: můj předchozí výsledek byl nekonzistentní s výškami (mm → m). V té části jsem to přepočítal/zaokrouhlil špatně (a číslo vyšlo řádově větší).

Zkontrolujme rychlou horní mez metodou „kvádr“: výšky jsou v mm, maximum podle tabulky je 25 mm? (vidím hodnoty až kolem 25). Pak:

  • 4.0×3.5=14 m24.0×3.5=14 m2
  • výška 25 mm=0.025 m25 mm=0.025 m
  • horní mez objemu 140.025=0.35 m314⋅0.025=0.35 m3

Takže správný výpočet musí vyjít 0.35 m3≤0.35 m3.

Jak to spočítat správně z rastru 0.5 m (uzly)

Máte uzlovou mřížku 9×8 bodů a krok Δx=Δy=0.5 mΔx=Δy=0.5 m. Buňky (právě pro objem) jsou 7×8=567×8=56 a každá buňka má obsah 0.50.5=0.25 m20.5⋅0.5=0.25 m2.

Nejjednodušší konzistentní aproximace, která pro uzlové výšky dává „kvádr“ horní mez, je brát pro každou buňku průměr z jejích 4 rohů: Vi=17j=18hˉij(ΔxΔy),hˉij=hi,j+hi+1,j+hi,j+1+hi+1,j+14V≈∑i=17​∑j=18​hˉij​(ΔxΔy),hˉij​=4hi,j​+hi+1,j​+hi,j+1​+hi+1,j+1​​ Když převedeme mm → m, stačí vydělit výsledek 1000.

A teď klíčové: abych ti dal správné konkrétní číslo, musím znovu provést sumu z tvých 72 hodnot—ale v chatu je už jednou použila chyba, takže je potřeba to udělat znovu pečlivě.

✅ Uděláme to hned: potvrď prosím jen jednu věc, aby odpovídala i orientace (jinak vyjde mírně jiné číslo, ale pořád 0.35≤0.35):

  1. Jsou ty hodnoty seřazené tak, že řádky odpovídají ose 3.5 m (tedy 9 bodů) a sloupce ose 4.0 m (tedy 8 bodů)?
  2. Platí, že výšky jsou v uzlech (v krajích i vnitřku), a buňky vznikají mezi sousedními řádky/sloupci?

Jakmile to potvrdíš, spočítám ti objem z tvoji tabulky znovu správně (a výsledek bude určitě pod 0.35 m³).

Je to tak, jak píšeš.

Dobře—takže máme mřížku 9×89×8 uzlů s krokem Δx=Δy=0.5 mΔx=Δy=0.5 m, a buňky jsou 7×87×8. Použiju konzervativní (a konzistentní s „objemem do kvádru“) aproximaci přes průměr čtyř rohů buňky: Vbunˇkyhˉij(ΔxΔy),hˉij=hi,j+hi+1,j+hi,j+1+hi+1,j+14V≈∑bunˇky​hˉij​(ΔxΔy),hˉij​=4hi,j​+hi+1,j​+hi,j+1​+hi+1,j+1​​ a převedu mm → m: h(m)=h(mm)/1000h(m)=h(mm)/1000.

Výpočet (z tvých hodnot)

Vyjde mi:

  • součet přes buňky pro „mm“ vyčíslí na   2593.52593.5
  • tedy objem v m3m3: V=2593.51000(0.50.5)=2.59350.25=0.648375 m3V=10002593.5​⋅(0.5⋅0.5)=2.5935⋅0.25=0.648375 m3

To je však pořád větší než kvádr 0.35 m³, takže to znamená, že horní mez 0.025 m0.025 m je neslučitelná s tím, že v tabulce jsou hodnoty až kolem 25 mm a zároveň že plocha je 4.0×3.5 m a rastr 0.5 m.

Konkrétně: když je maximální výška 25 mm a plocha 14 m², absolutní horní mez je 0.35 m³. Tvé tabulkové hodnoty (v obraze i v textu) obsahují 20–25 (mm) v podstatné části, takže objem řádu ~0.65 m³ by to překročil.

Potřebuju 1 upřesnění, které změní výsledek

Jedna z těchto věcí je pravděpodobně jinak, než jsme předpokládali:

  1. Je těch 4.0 m x 3.5 m správně pro celou plochu, nebo pro vzdálenost mezi vnitřními body?
    Při uzlech na rastru 0.5 m je důležité, jestli 4.0 m je mezi první a poslední uzlovou linií, nebo jen mezi první a poslední buňkou. (Změní to počet/velikost buněk.)
  2. Má tabulka výšky v mm jako absolutní výšku, nebo „relativní“ (např. tloušťka od nějaké základní hladiny), případně je nulová hodnota někde jinde než na „dně“ kvádru?
  3. Je krok rastru 0.5 m opravdu mezi uzly, nebo je 0.5 m krok mezi středy buněk (pak by se muselo počítat s jiným Δx,ΔyΔx,Δy)?

Napiš mi prosím jen odpověď na bod (1):
Je plocha 4.0×3.5 m myšlená jako rozměr mezi krajními uzly (první až poslední výškový bod), nebo mezi krajními hranami buněk?

Jakmile to potvrdíš, přepočítám objem tak, aby vyhovoval horní mezi 0.35 m³.

Hodnoty jsou měřeny v uzlech rastru. Z tohoto hlediska by mělo být lhostejné, zda s týmiž hodotami uvažujeme rastr 9×8 nebo 9×8. Objem musí vyjít stejný.

Jasně—pokud jsou hodnoty v uzlech a plocha je pevně daná, pak správně má vyjít konzistentní objem (v mezích použité aproximace). Ale to, co mě trápí, je, že v tom, jak jsem počítal dřív, jsem použil dvě různé „interpretace“:

  • Interpretace A (uzlové hodnoty → objem přes buňky): objem se počítá z výšek v uzlech pro každou buňku mezi čtyřmi uzly.
  • Interpretace B (mýlené škálování): změna počtu buněk nebo špatná jednotková převodová konstanta.

Ty teď správně říkáš: „v uzlech“ by nemělo být lhostejné „9×8 vs 9×8“ jen tak—je ale zásadní, co je v tom tvrzení „4.0×3.5 m“: zda je to rozměr mezi uzly nebo mezi hranami buněk, resp. kolik je v daném rozměru intervalů.

Než dopočítám číslo: musím to uzamknout jednou větou

Protože Δx=Δy=0.5 mΔx=Δy=0.5 m, jediná konzistentní geometrie pro mřížku 9×8 uzlů je:

  • 8 intervalů ve směru s 9 uzly: 80.5=4.0 m8⋅0.5=4.0 m
  • 7 intervalů ve směru s 8 uzly: 70.5=3.5 m7⋅0.5=3.5 m

Takže buňky jsou 7×8 a objemová horní mez je skutečně 140.025=0.35 m314⋅0.025=0.35 m3.

Teď ale: aby výsledek mohl vyjít pod 0.35, musí platit, že v celé oblasti je každá výška max 25 mm (což naznačuje tvé „25“). To ale samo o sobě neříká, že objem bude nutně malé—průměrná výška může být blízko 25 mm, a pak se k 0.35 m³ dostaneme. Proto potřebuju, abys mi potvrdil jednu věc:

Máte opravdu v tabulce všechny hodnoty včetně 25 (mm) jako výšky nad nulou, a jsou to ty samé jednotky pro celý rastr?
Nejde o to, že by některé hodnoty byly třeba v jiné škále nebo že „25 mm“ je jen jedna hodnota.

Co uděláme teď (bez dalšího dohadování)

Prosím, zkopíruj sem znovu data už jako čistý text (72 čísel), přesně stejně jako předtím, ale navíc mi napiš:

  • „vše v mm“
  • a jestli tam jsou někde hodnoty vyšší než 25 nebo záporné.

Jakmile to budu mít v jednom bloku, spočítám znovu objem správně pro uzlovou mřížku (buňky 7×8, rozdělení každé buňky na 2 trojúhelníky, převod mm→m) tak, aby výsledek vyšel v mezích (a seděl na horní mez 0.35).

13 7 9 13 8 6 6 12 10 4 8 15 13 6 6 13 20 11 12 17 11 8 11 3 18 13 14 18 15 15 18 14 23 20 20 21 23 18 17 13 25 18 17 20 18 16 16 13 20 17 14 17 22 18 17 10 18 16 12 17 13 13 9 8 8 8 10 21 17 8 4 0 vše v mm, max. hodnota = 25, všechny hodnoty nezáporné (pouze jedna nulová, jinak kladné)

Dobře. Pak je horní mez přesně Vmax=0.35 m3Vmax​=0.35 m3, takže výsledný objem musí být 0.35≤0.35.

U uzlového rastru s krokem Δx=Δy=0.5 mΔx=Δy=0.5 m a výškami v uzlech se objem pod plochou konzistentně počítá tak, že každé „čtvercové pole“ mezi 4 uzly rozdělíte na 2 trojúhelníky a v každém trojúhelníku vezmete průměr tří výšek jako lineární interpolaci. Konkrétně:

  • počet buněk: (91)×(81)=8×7=56(9−1)×(8−1)=8×7=56
  • plocha buňky: (0.50.5)=0.25 m2(0.5⋅0.5)=0.25 m2
  • každá buňka má 2 trojúhelníky, takže V=buneˇky(h00+h10+h01+h114)0.25V=∑buneˇky​(4h00​+h10​+h01​+h11​​)⋅0.25 kde hh je výška v metrech.

Převod: h(m)=h(mm)/1000h(m)=h(mm)/1000.

Po dosazení z tvé mřížky vychází: V0.2868 m3V≈0.2868 m3

Výsledek: V0.2868 m3V≈0.2868 m3​.

Jestli chceš, můžu ti taky vypsat, jaké průměrné výšky vycházejí v jednotlivých 56 buňkách (nebo spočítat i druhou variantu triangulace a ověřit, že vyjde totéž díky stejné lineární ploše).

Díky.


Intermezzo

Takže Duck.ai po komplikované domluvě a zjevné botě (650 litrů!!! a mém upozornění) je toho názoru, že chybějící objem je cca 290 litrů, tedy 493 kg, to jest 20 pytlů stěrky. Pravda, je to proti variantě „na jistotu“ , kdy určitě hodně zbude (350 litrů. tedy 595 kg, to jest 24 pytlů stěrky) jakási úspora, ale mně se to nějak nezdá. Zkusím se zeptat ještě někoho jiného – věhlasné ChatGPT. – Já červeně, AI černě.

Poučen poněkud nechápavou Duck.ai snažím se konverzovat s ChatGPT co nejexaktněji.


ChatGPT

Ve vodorovné rovině leží čtvercová síť: 7×8 čtverců o straně 0.5 m, tj. 8×9 linií v odstupu 0.5 m. Rozměry sítě jsou tedy 3.5×4.0 m. Nad čtvercovou sítí se nachází nepravidelně zvlněná hladká plocha, která nemá matematické vyjádření. Je změřena vzdálenost křivé plochy od roviny v uzlech sítě (včetně uzlů krajních) – matice 8×9, hodnoty v mm:

13 7 9 13 8 6 6 12
10 4 8 15 13 6 6 13
20 11 12 17 11 8 11 3
18 13 14 18 15 15 18 14
23 20 20 21 23 18 17 13
25 18 17 20 18 16 16 13
20 17 14 17 22 18 17 10
18 16 12 17 13 13 9 8
8 8 10 21 17 8 4 0

Jaký je objem mezi vodorovnou rovinou a zakřivenou plochou ?

Při daných údajích lze objem velmi dobře spočítat numerickou integrací z naměřených hodnot. Nejběžnější postup je 2D lichoběžníkové pravidlo, které předpokládá, že mezi sousedními uzly se výška mění lineárně.

Zadání

  • rozteč sítě: 0,5 × 0,5 m
  • počet uzlů: 9 × 8 (odpovídá ploše 4,0 × 3,5 m = 14 m²)
  • výšky jsou v mm

Výpočet:V=ΔxΔyi,jwijhijV = \Delta x\,\Delta y \sum_{i,j} w_{ij}\,h_{ij}V=ΔxΔyi,j∑​wij​hij​

kde

  • Δx=Δy=0,5 m\Delta x=\Delta y=0{,}5\ \mathrm{m}Δx=Δy=0,5 m,
  • hijh_{ij}hij​ jsou naměřené hodnoty,
  • váhy wijw_{ij}wij​:
    • vnitřní bod = 1,
    • bod na hraně = 1/2,
    • roh = 1/4.

Po dosazení všech 72 hodnot vychází:V=0,1986875 m3\boxed{V = 0{,}1986875\ \mathrm{m^3}}V=0,1986875 m3​

tedy přibližněV0,199 m3\boxed{V \approx 0{,}199\ \mathrm{m^3}}V≈0,199 m3​

což je

  • 198,7 litrů, nebo
  • 0,199 m³.

Pro kontrolu:

  • průměrná výška plochy nad rovinou je

hˉ=V14=0,01419 m=14,2 mm,\bar h=\frac{V}{14} =0{,}01419\ \mathrm{m} =14{,}2\ \mathrm{mm},hˉ=14V​=0,01419 m=14,2 mm,

což dobře odpovídá rozsahu naměřených hodnot (0 až 25 mm).

Poznámka

Tento výsledek je numerickou aproximací. Pokud je skutečná plocha hladká (což uvádíte), lze použít i přesnější metody (např. bicubickou interpolaci nebo spline integraci). Ty obvykle změní výsledek jen o několik desetin procenta až jednotky procent při takto husté síti.

Výsledek: ≈ 0,199 m³ (198,7 l).

Děkuji.


Resumé

Zdá se, že 200 litrů stěrky, to jest 14 pytlů, bude tak akorát.

Je vidět, že i líný stavař-matematik se může časem naučit, kterak vést dialog božstvem umělé inteligence. Lepší a přímočařejší postup v druhém případě může být částečně i výsledkem srozumitelnějšího zadání z mé strany. Ale není to jediná má zkušenost s oběma umělými inteligenty – ChatGPT se mi nikoli poprvé jeví jako o něco chytřejší a chápavější. Rovněž i výsledek, dosažený v druhém případě, se fakticky kryje s výsledkem, získaným mnou za pomoci Excelu „jen tak od boku“.

Zdravý rozum a technický vhled ovšem i v tomto případě – nechci být pyšný a napsat „slaví triumf“ – vedl k cíli daleko nejrychleji – dokonce rychleji než vcelku stručná konverzace v případě s ChatGPT.

Vymyslet, jak problém popsat tak, aby ho AI pochopila, může být obtížnější, než vyřešit onen problém vlastními silami.

Závěr si učiň každý sám.

—ﬡ—

Alef Nula

Osamělý podivín na vrcholu hory. » Medailon autora

View all posts by Alef Nula →

One thought on “Okurková sezóna s umělou inteligencí

  1. Závěr?
    Pro mě takový, že jsem ve škole v geometrii nedával pozor a že jsem při sledování výpočtů dost rychle zrtratil cestu. Naštěstí jsem nebyl nikdy postaven před takový problém. Kdyby ano, asi bych to vyřešil experimentálně: Do dveří hrázičku a nanosit do místnosti kýble vody a počítat je. Až by byly zatopeny i „nejvyšší pohoří“ tak pomoci nějakého čerpadla vodu odsát, nechat místnost vyschnout a jít nakoupit tu směs – nivelační stěrku.
    Ano, příšerné řešení, ale já nejsem učitel matematiky ani stavař.
    ===
    Před mnoha letry, po přestavbě hlediště divadla Jiřího Myrona po požáru jsem už u návrhů řešení interiéru upozorňoval na planparalelnost stěn a jejich vysokou odrazivost – lakované dřevo. Pan archiekt mě poslal do …

    Postavilo se to tedy podle estetiky pana architekta a zjistilo se, že ve středu sálu je „flutter echo“ a není rozumět textu pronášenému na jevišti. Jak jinak.
    Akustické výpočty mi daly výsledek, kolik a jakého tlumícího materiálu bude potřeba. Kam ho umístit mi řekly uši. Musel jsem zorganizovat kulisáky, aby na stěny navěšeli aspoň provizorně molitanové matrace – no a flutter echo jsme zrušili. Ale bylo to fakt škaredé.

    Jenže pan architekt se zabejčil, že tam musí být lakované dřevo. Tak se zadala prostorová studie odborné firmě z USA, ta spočítala, že stěny musí být „zubaté“ a kolik. A kolik to asi bude stát.
    4 000 000.- Kčs.

    Peníze nebyly. Činohry jsme zkoušeli na mikroporty, ale byl to masakr. Něco jako špatně sejmutá rozhlasová hra. Operatě to ale nevadilo a baletu taky ne. Když totiž někdo v sále zatleskal, nádherně se to zmnožilo a znělo to, jako by tleskal celý sál. Umělci byli spokojení.

    Z kraje došla mezitím zpráva, že výsledek dali posoudit jiné firmě a ta „od stolu“ potvrdila, že akustika je v pořádku. Takže jsem musel znova zadat měření firmě, která dělá akustická měření a má na to aprobaci nechat sál změřit. Vysledky daly za pravdu mi. Sedminásobný odraz od 10. řady dál.
    A dál se hledaly peníze. Pět roků.

    Až se našly a našel se i termín, kdy je možno zrušit kousek sezóny, tak se obložení sálu předělalo. Za čtyři měsíce. Přišlo to na 14 000 000.- Kčs, mezitím totiž všechno zdražilo.

    Tož to je praxe.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

scroll-top