Ir para o conteúdo

Código Natural: mudanças entre as edições

m
(Bases de interesse prático em Geo)
Linha 295: Linha 295:
A base&nbsp;2 (binária) é a mais fundamental, com dígitos de 1&nbsp;bit, mas geocódigos binários com número ímpar de bits serão associados a "grades degeneradas", com células retangulares. Portanto buscamos ''base&nbsp;N'' com ''N''≥4. A base&nbsp;2 todavia é fundamental nos sistemas digitais: apenas ''bases&nbsp;N'' com N≥4 pertencendo ao conjunto das potências de&nbsp;2, <math>N \in \{2^2, 2^3, 2^4, ...\}</math>, é que terão dígitos fazendo uso integral dos bits que os representam. Por exemplo a ''base&nbsp;10'' do sistema numérico decimal usual, requer 4&nbsp;bits por dígito, descartando informação (usa valores 0&nbsp;a&nbsp;9 e descarta 10&nbsp;a&nbsp;15).
A base&nbsp;2 (binária) é a mais fundamental, com dígitos de 1&nbsp;bit, mas geocódigos binários com número ímpar de bits serão associados a "grades degeneradas", com células retangulares. Portanto buscamos ''base&nbsp;N'' com ''N''≥4. A base&nbsp;2 todavia é fundamental nos sistemas digitais: apenas ''bases&nbsp;N'' com N≥4 pertencendo ao conjunto das potências de&nbsp;2, <math>N \in \{2^2, 2^3, 2^4, ...\}</math>, é que terão dígitos fazendo uso integral dos bits que os representam. Por exemplo a ''base&nbsp;10'' do sistema numérico decimal usual, requer 4&nbsp;bits por dígito, descartando informação (usa valores 0&nbsp;a&nbsp;9 e descarta 10&nbsp;a&nbsp;15).


Iniciamos em ''N''=4, e daí em diante os geocódigos serão úteis se compatíveis com a ''base&nbsp;4'' e a ''base&nbsp;2''. Resumindo os '''requisitos''' que justificamos até aqui:<blockquote>base N com ''N''≥4 para ter uma representação mais compacta, e que tenha ''N'' múltiplo de 4, para que suas células resultem sempre em células quadradas. Além disso ''N'' precisa ser potência de dois. <br/>Portanto ''N'' no conjunto {4, 8, 16, 64, ...}</blockquote>
Iniciamos em ''N''=4, e daí em diante os geocódigos serão úteis se compatíveis com a ''base&nbsp;4'' e a ''base&nbsp;2''. Resumindo os '''requisitos''' que justificamos até aqui:<blockquote>base N com ''N''≥4 para ter uma representação mais compacta, e que tenha ''N'' múltiplo de 4, para que suas células resultem sempre em células quadradas. Além disso ''N'' precisa ser potência de dois. <br/>Portanto ''N'' no conjunto {4, 8, 16,&nbsp;64,&nbsp;…}</blockquote>
O valor de ''N'' todavia tem um limite superior bem conhecido para o alfabeto das línguas ocidentais: 26&nbsp;letras do alfabeto mais dígitos 0&nbsp;a&nbsp;9, resultando no máximo de 36&nbsp;caracteres. As tentativas de uso da base&nbsp;64 falham principalmente pela dificuldade do ser humano em distinguir maiúsculas e minúsculas. Há portanto o requisito de<blockquote>N≤36</blockquote>O conjunto portanto fica restrito a {8,16} onde o máximo, '''para máxima compressão, é o&nbsp;16'''. A representação hexadecimal portanto é a eleita.
O valor de ''N'' todavia tem um limite superior bem conhecido para o alfabeto das línguas ocidentais: 26&nbsp;letras do alfabeto mais dígitos 0&nbsp;a&nbsp;9, resultando no máximo de 36&nbsp;caracteres. As tentativas de uso da base&nbsp;64 falham principalmente pela dificuldade do ser humano em distinguir maiúsculas e minúsculas. Há portanto o requisito de<blockquote>N≤36</blockquote>As bases mais compactas portanto ficam restritas a <math>N \in \{8, 16\}</math> onde o máximo, '''para máxima compressão, é o&nbsp;16'''. A&nbsp;representação hexadecimal portanto é a eleita.


Para algumas aplicações, todavia, como a adoção do geocódigo como [[código postal]], maior compressão é solicitada. A experiência com a tecnologia [[wikipedia:Geohash|Geohash clássica]] demonstrou que, apesar de envolver grades degeneradas, nas aplicações logísticas o base 32 seria uma alternativa. Ela não chega a ser totalmente incompatível com a base 4: geocódigos base32 com quantidade de dígitos par (2, 4, 6, etc.) são compatíveis. A ilustração abaixo mostra o "bate" entre a quantidade de bits, há compatibilidade para múltiplos de 10.
Para algumas aplicações, todavia, como a adoção do geocódigo como [[código postal]], maior compressão é solicitada. A&nbsp;experiência com a tecnologia [[wikipedia:Geohash|Geohash clássica]] demonstrou que, apesar de envolver grades degeneradas, nas aplicações logísticas o ''base&nbsp;32'' seria uma alternativa. Ela não chega a ser totalmente incompatível com a ''base&nbsp;4'': geocódigos ''base&nbsp;32'' com quantidade de dígitos par (2,&nbsp;4, 6,&nbsp;etc.) são compatíveis. A&nbsp;ilustração abaixo mostra o "bate" entre a quantidade de bits, há compatibilidade para múltiplos de&nbsp;10.


[[Arquivo:Base4-bitsCorrelatedOtherBases.png|centro|semmoldura|520px]]
[[Arquivo:Base4-bitsCorrelatedOtherBases.png|centro|semmoldura|520px]]


Tomando o caso concreto da grade de um país continental como Brasil, que requer 20 níveis para subdividir ''L''0 até chegar no metro. Fica nítido pelo emparelhamento dos bits que apenas três níveis das grades base32 e hexadecimal serão comuns a essas bases: ''L''0, ''L''10 e ''L''20. Abaixo a ilustração da interface para seleção de níveis, com todos e com seus filtrados.
Tomando o caso concreto da grade de um país continental como Brasil, que requer 20 níveis para subdividir&nbsp;''L''0 até chegar no metro. Fica nítido pelo emparelhamento dos bits que apenas três níveis das grades ''base&nbsp;32'' e hexadecimal serão comuns: ''L''0, ''L''10 e&nbsp;''L''20. Abaixo a ilustração da interface para seleção de níveis, com todos e com seus filtrados.


[[Arquivo:Osmc-levelFilters.png|centro|620px]]
[[Arquivo:Osmc-levelFilters.png|centro|620px]]
2 434

edições