Discussão:DNGS/Decisões soberanas: mudanças entre as edições
mSem resumo de edição |
(→Issue1) |
||
Linha 34: | Linha 34: | ||
idx | isolabel_ext | area_km2 | side_km | hex_digits | idx | isolabel_ext | area_km2 | side_km | hex_digits | ||
-----+--------------+----------+---------+------------ | -----+--------------+----------+---------+------------ | ||
1 | RU | 16980200 | 4121 | 10 | 1 | RU | 16980200 | 4121 | 10-11 | ||
2 | CA | 9945528 | 3154 | 10 | 2 | CA | 9945528 | 3154 | 10-11 | ||
3 | US | 9464330 | 3076 | 10 | 3 | US | 9464330 | 3076 | 10-11 | ||
4 | CN | 9374591 | 3062 | 10 | 4 | CN | 9374591 | 3062 | 10-11 | ||
5 | BR | 8729559 | 2955 | 10 | 5 | BR | 8729559 | 2955 | 10-11 | ||
6 | AU | 7691175 | 2773 | 10 | 6 | AU | 7691175 | 2773 | 10-11 | ||
7 | IN | 3151452 | 1775 | 10 | 7 | IN | 3151452 | 1775 | 10-11 | ||
8 | AR | 2926422 | 1711 | 10 | 8 | AR | 2926422 | 1711 | 10-11 | ||
9 | KZ | 2714263 | 1648 | 10 | 9 | KZ | 2714263 | 1648 | 10-11 | ||
10 | CD | 2325240 | 1525 | 10 | 10 | CD | 2325240 | 1525 | 10-11 | ||
11 | DZ | 2308858 | 1519 | 10 | 11 | DZ | 2308858 | 1519 | 10-11 | ||
12 | MX | 2250166 | 1500 | 10 | 12 | MX | 2250166 | 1500 | 10-11 | ||
13 | GL | 2154381 | 1468 | 10 | 13 | GL | 2154381 | 1468 | 10-11 | ||
14 | PE | 2144667 | 1464 | 10 | 14 | PE | 2144667 | 1464 | 10-11 | ||
15 | SA | 1921725 | 1386 | 10 | 15 | SA | 1921725 | 1386 | 10-11 | ||
16 | ID | 1879827 | 1371 | 10 | 16 | ID | 1879827 | 1371 | 10-11 | ||
17 | SD | 1855574 | 1362 | 10 | 17 | SD | 1855574 | 1362 | 10-11 | ||
18 | LY | 1623761 | 1274 | 10 | 18 | LY | 1623761 | 1274 | 10-11 | ||
19 | IR | 1622510 | 1274 | 10 | 19 | IR | 1622510 | 1274 | 10-11 | ||
20 | MN | 1564649 | 1251 | 10 | 20 | MN | 1564649 | 1251 | 10-11 | ||
21 | TD | 1266282 | 1125 | 10 | 21 | TD | 1266282 | 1125 | 10-11 | ||
22 | ML | 1252724 | 1119 | 10 | 22 | ML | 1252724 | 1119 | 10-11 | ||
23 | AO | 1244654 | 1116 | 10 | 23 | AO | 1244654 | 1116 | 10-11 | ||
24 | CO | 1232281 | 1110 | 10 | 24 | CO | 1232281 | 1110 | 10-11 | ||
25 | ZA | 1219827 | 1104 | 10 | 25 | ZA | 1219827 | 1104 | 10-11 | ||
26 | NE | 1181301 | 1087 | 10 | 26 | NE | 1181301 | 1087 | 10-11 | ||
27 | ET | 1127376 | 1062 | 10 | 27 | ET | 1127376 | 1062 | 10-11 | ||
28 | BO | 1083684 | 1041 | 9 | 28 | BO | 1083684 | 1041 | 9-10 | ||
29 | VE | 1077441 | 1038 | 9 | 29 | VE | 1077441 | 1038 | 9-10 | ||
30 | MR | 1036392 | 1018 | 9 | 30 | MR | 1036392 | 1018 | 9-10 | ||
31 | CL | 1019568 | 1010 | 9 | 31 | CL | 1019568 | 1010 | 9-10 | ||
32 | EG | 1000819 | 1000 | 9 | 32 | EG | 1000819 | 1000 | 9-10 | ||
33 | TZ | 941506 | 970 | 9 | 33 | TZ | 941506 | 970 | 9-10 | ||
34 | NG | 907501 | 953 | 9 | 34 | NG | 907501 | 953 | 9-10 | ||
35 | PK | 872939 | 934 | 9 | 35 | PK | 872939 | 934 | 9-10 | ||
... | ... | ||
select ROW_NUMBER() OVER() as idx, isolabel_ext, | select ROW_NUMBER() OVER() as idx, isolabel_ext, | ||
round(a/(1000.0^2)) area_km2, round(sqrt(a)/1000.0) side_km, | round(a/(1000.0^2)) area_km2, round(sqrt(a)/1000.0) side_km, | ||
floor(log(sqrt(a))/(2*log(2))) hex_digits | floor(log(sqrt(a))/(2*log(2)))::text||'-'||ceil(log(sqrt(a))/(2*log(2)))::text hex_digits | ||
from ( | from ( | ||
select isolabel_ext, st_area(geom,true) a | select isolabel_ext, st_area(geom,true) a | ||
Linha 80: | Linha 80: | ||
) t; | ) t; | ||
</pre> | </pre> | ||
Na Colômbia (CO) para se chegar no metro são 10 dígitos hexa +1 half (ex. <code>c0780c3d75V</code>), no Brasil (BR) são 11 exatos (ex. <code>d11a0bf998f</code>). O número de unidades administrativas da escala de endereço, ou seja, tipicamente municipal, assim como a área mediana dessas unidades, varia bastante. Pela quantidade de municípios é possível estimar a área média, portanto número de dígitos que se dispensaria como prefixo. | |||
Duas estratégias no encurtamento de geocódigo de grade científica: | |||
# Retângulo em torno do centro urbano: basta generalizar o [https://github.com/search?q=repo%3Agoogle%2Fopen-location-code%20recovernearest&type=code RecoverNearest() do OLC]. | |||
# Cobertura: o que fizemos no Brasil e Colômbia, porém neste caso o limite seriam 16 células de cobertura. Duas variantes: | |||
#* Cobertura uniforme: apenas grades de níveis pares, com hexadecimal perfeito. | |||
#* Cobertura livre: partindo do melhor encaixe de qualquer nível, perdendo garantia de compatibilidade entre todos os tamanhos de célula nos municípios. |
Edição das 23h28min de 12 de junho de 2024
Lembretes
Histórico e filosofia
Resumidamente OSMcode se baseia racionalidade científica dos seus algoritmos e na soberania. (...) O ponto de partida foram geocódigos existentes (tais como Geohash e OLC), e a Geo URI extendida...
Convenções gerais
Baseada em anti-patentes [KraEtAll2018], [KraEtAll2019], [KrJeBo2020] e [KraEtAll2022a].
Decisões soberanas
A metodologia OSMcodes parte do pressuposto de que geocódigos-ótimos são possíveis, mas a noção de ótimo vem da comunidade usuária. As comunidades usuárias são as nações, cada uma com sua identidade cultural, peculiaridades e necessidades. É suposto que um padrão nacional é "ótimo" se for baseado na racionalidade (método científico) e na soberania da nação, ou seja, nas decisões tomadas pela própria nação e não por terceiros.
A racionalidade garante (ou exige) por exemplo que:
- o geocódigo seja funcionalmente equivalente ao protocolo Geo URI porém mais curto e fácil de lembrar
- o ser humano consuma o mínimo possível de memória para lembrar do geocódigo postal da sua casa
- o padrão seja útil e reutilizável em diversas outras aplicações, além da postal
- a representação espacial seja hierárquica;
- o formato de célula (triângulo, quadrado ou hexágono) seja o mais flexível possível
... Outras finalidades: o censo democráfico, grade de distribuição espacial de doenças, distribuição econômica, localização de áreas com desastres, emergências, etc.
Sem contratos de pegar-ou-largar
Quando um padrão, como ISO, fornece liberdade de escolha, não deveria ser para dividir o mundo em "setores dos fornecedores"... A cada setor o fornecedor dominante oferece apenas a sua opção, em contratos do tipo "pegar ou largar" (tudo ou nada). Não por exemplo para dividir o mundo em Google, Microoft e ESRI. É para dar liberdade de adequação às necessidades locais.
Issues
Issue1
A decisão D3a faz sentido apenas para os 30 ou 35 maiores países, para todos os demais, com territórios municipais pequenos (ou com boas convenções de delimitação urbano vs rural), a base32 é dispensável. Pode-se adotar a base16 nas aplicações logísticas, deixando a base16h reservada ao uso científico. A listagem abaixo mostra o potencial de redução de dígitos já na divisão absoluta do país.
idx | isolabel_ext | area_km2 | side_km | hex_digits -----+--------------+----------+---------+------------ 1 | RU | 16980200 | 4121 | 10-11 2 | CA | 9945528 | 3154 | 10-11 3 | US | 9464330 | 3076 | 10-11 4 | CN | 9374591 | 3062 | 10-11 5 | BR | 8729559 | 2955 | 10-11 6 | AU | 7691175 | 2773 | 10-11 7 | IN | 3151452 | 1775 | 10-11 8 | AR | 2926422 | 1711 | 10-11 9 | KZ | 2714263 | 1648 | 10-11 10 | CD | 2325240 | 1525 | 10-11 11 | DZ | 2308858 | 1519 | 10-11 12 | MX | 2250166 | 1500 | 10-11 13 | GL | 2154381 | 1468 | 10-11 14 | PE | 2144667 | 1464 | 10-11 15 | SA | 1921725 | 1386 | 10-11 16 | ID | 1879827 | 1371 | 10-11 17 | SD | 1855574 | 1362 | 10-11 18 | LY | 1623761 | 1274 | 10-11 19 | IR | 1622510 | 1274 | 10-11 20 | MN | 1564649 | 1251 | 10-11 21 | TD | 1266282 | 1125 | 10-11 22 | ML | 1252724 | 1119 | 10-11 23 | AO | 1244654 | 1116 | 10-11 24 | CO | 1232281 | 1110 | 10-11 25 | ZA | 1219827 | 1104 | 10-11 26 | NE | 1181301 | 1087 | 10-11 27 | ET | 1127376 | 1062 | 10-11 28 | BO | 1083684 | 1041 | 9-10 29 | VE | 1077441 | 1038 | 9-10 30 | MR | 1036392 | 1018 | 9-10 31 | CL | 1019568 | 1010 | 9-10 32 | EG | 1000819 | 1000 | 9-10 33 | TZ | 941506 | 970 | 9-10 34 | NG | 907501 | 953 | 9-10 35 | PK | 872939 | 934 | 9-10 ... select ROW_NUMBER() OVER() as idx, isolabel_ext, round(a/(1000.0^2)) area_km2, round(sqrt(a)/1000.0) side_km, floor(log(sqrt(a))/(2*log(2)))::text||'-'||ceil(log(sqrt(a))/(2*log(2)))::text hex_digits from ( select isolabel_ext, st_area(geom,true) a from optim.jurisdiction_geom where isolabel_ext ~ '^..$' order by 2 desc ) t;
Na Colômbia (CO) para se chegar no metro são 10 dígitos hexa +1 half (ex. c0780c3d75V
), no Brasil (BR) são 11 exatos (ex. d11a0bf998f
). O número de unidades administrativas da escala de endereço, ou seja, tipicamente municipal, assim como a área mediana dessas unidades, varia bastante. Pela quantidade de municípios é possível estimar a área média, portanto número de dígitos que se dispensaria como prefixo.
Duas estratégias no encurtamento de geocódigo de grade científica:
- Retângulo em torno do centro urbano: basta generalizar o RecoverNearest() do OLC.
- Cobertura: o que fizemos no Brasil e Colômbia, porém neste caso o limite seriam 16 células de cobertura. Duas variantes:
- Cobertura uniforme: apenas grades de níveis pares, com hexadecimal perfeito.
- Cobertura livre: partindo do melhor encaixe de qualquer nível, perdendo garantia de compatibilidade entre todos os tamanhos de célula nos municípios.