Arquivo para Março, 2008

30
Mar
08

Caracol Keyboard: A Concept For One Handed Typing – Gizmo Watch


“The Caracol is a computer keyboard that absolutely rubbishes all convention and takes to an entirely new approach to simplify typing. Of all animals, the Caracol takes inspiration from the snail, and now if you think the Caracol does the job as slow as the snail itself, you will be in for a real shock. You can type blindingly fast and all that just with one hand. For this, Caracol, uses a rotary keyboard on a wheel through which you slip your palm. The keyboard or rather, keywheel rests on a nice and comfortable, ergonomic pad very similar to the mousepad on which you rest the heel of your palm. The loop has a 5:1 gearbox which enables it to rotate even with a small movement of the palm.
Now, a slight movement of your hand to the left gets this wheel/loop spinning to the left and to whichever keys you want to access and a similar result for a slight movement to the right. Thus, you can access all the keys quickly and type almost telepathically as you will find the keys automatically falling to your fingers than your fingers locating them, as is the case in conventional keyboards. The rotating keywheel retains the qwerty format but uses symmetry to achieve all this with tri directional keys which allows you to to type 3 characters with one key. Though it is still a concept, it looks exciting enough and we need to first use one of these to know how comfortable and effective this design can really be. Till then, watch this space.”
30
Mar
08

Voisin Is The Concept I Drool For, Infact We Drool For – Auto Motto




Voisin Is The Concept I Drool For, Infact We Drool For – Auto Motto: “Voisin, this name sounds tempting, no? Well, if it doesn’t then the details related to this name will surely have you drooling over your PC. No, it’s not another hot super-model but it’s something that every man desires – an amazing car that will have everyone’s eyes stuck on it.
I know I’m over-exaggerating as this is about a concept car, but it is coming from one of the greatest designers of auto world. The guy behind Ferrari Dino and Hansen GT, Ernesto Freitas, is back at it and this time his work is dubbed as Voisin. For me the concept is as tempting as its name. It is a concept but greatest part is that Ernesto is looking for some investors for his concept under his own brand Luso Motors.
His new concept is inspired by Bugatti Veyron and is supposedly designed as a car with a large rear engine. Other than that we don’t really have much info available (as of now), but hopefully we’ll soon be astounded by the specs whenever they come our way, because these images are good enough to tell us that we are in for some treat. So, you can drool and kill yourself over the thoughts of getting this one by viewing the computer rendered images of the concept in the gallery below while we dig deeper to find details of the project.”
30
Mar
08

Redes Semânticas

Rodrigo Real
rreal@inf.ufrgs.br

Introdução

Uma rede semântica é uma notação gráfica composta por nodos interconectados. As redes semânticas podem ser usadas para representação de conhecimento, ou como ferramenta de suporte para sistemas automatizados de inferências sobre o conhecimento. As redes semânticas podem ser divididas em [SOW 2002]:

  • Redes de Definição – enfatiza o subtipo, ou a relação do tipo “é um” entre um tipo conceitual e um recém definido subtipo. A rede resultante suporta a regra da herança através da cópia de propriedades definidas para o supertipo para todos os seus subtipos. Já que as definições são verdadeiras por definição, a informação neste tipo de rede é geralmente assumida como necessariamente verdadeira;
  • Redes de Asserção – são desenvolvidas para garantir proposições. Diferentemente das redes de definição, a informação em uma rede de asserção é considerada contingentemente verdadeira, a não ser que seja explicitamente marcada com um operador de modo;
  • Redes de Implicação – usa a implicação com principal relação para conexão de nodos. Eles podem ser usados para representar padrões de crenças, causalidade, ou inferências;
  • Redes Executáveis – incluem algum mecanismos, como procedimentos anexos, para execução de inferências, passagem de mensagens, ou busca por padrões e associações;
  • Redes de Aprendizado – constrói, ou estende sua representação através da aquisição de conhecimento a partir de exemplos. O novo conhecimento pode mudar a antiga rede pela adição e remoção de arcos e nodos, ou pela alteração de valores numéricos, que associam nodos e arcos;
  • Redes Híbridas – combinam duas ou mais das redes anteriores.

Redes de Definição

É a mais antiga das redes semânticas. Foi proposta pelo filósofo grego Porfírio que ilustrou o método de categorização proposto por Aristóteles. O método se utilizava de uma estrutura hierárquica de tipos e subtipos. A figura 1 apresenta uma versão da árvore de Porfírio.

As primeiras implementações de redes semânticas surgiram para definições de tipos conceituais e para padrões de relação para máquinas de tradução.

Figura: Árvore de Porfírio

image

A árvore de Porfírio serviu de base para a concepção da linguagem KL-One (Knowledge Language One)[BRA 85], implementada em 1979.

A linguagem KL-One é um linguagem gráfica, o conhecimento é representado na forma de diagramas, com símbolos diferenciados para, por exemplo, conceitos gerais ou conceitos individuais (exemplo círculos brancos ou sombreados). Arcos duplos estabelecem uma relação de subtipo para supertipo. O círculo no centro de algumas flechas representam propriedades (roles). A figura 2 apresenta um exemplo de uma rede semântica utilizando a KL-One.

Figura 2: Exemplo de uso da KL-One

image

Redes de Asserção

Foram desenvolvidas para a asserção de proposições lógicas. A notação gráfica foi criada com base na notação utilizada pela química orgânica. Esta notação foi criada por Although Peirce em 1882, e serviria para mostrar “os átomos e as moléculas da lógica”.

A Stagirite teacher of a Macedonian conqueror of the world is a disciple and an opponent of a philosopher admired by Church Fathers.

Figura 3: Um grafo relacional

image

Os grafos relacionais conseguem representar apenas dois tipos de operadores: operadores de conjunção image e operadores de "existência" image . Outros operadores como disjunção e negação apresentavam problemas na representação gráfica com relação a delimitação de escopo. A expressão abaixo é equivalente ao grafo apresentado:

image

Diversas propostas foram feitas no sentido de melhorar a notação gráfica deste tipo de rede semântica, permitindo que outros operadores lógicos fossem também utilizados. A primeira implementação utilizada na área de inteligência artificial foi feita por Stuart Saphiro em 1971. Esta primeira implementação evoluiu para o chamado Semantic Network Processing System (SNePS)[SHA 79]. SNePS foi feito para que a base de conhecimento fosse construída a partir de uma representação em linguagem natural[SHA 92].

Figura 4: Exemplo de uso de SNePS

image

A figura 4 apresenta um exemplo do uso de SNePS, no exemplo é representada a frase “Sue thinks that Bob believes that a dog is eating a bone”. Cada um dos nodos nomeados de M1 a M5 representam uma proposição distinta, cujo conteúdo relacional está em anexo ao nodo de proposição.

Redes de Implicação

As redes de implicação estabelecem relações de implicação entre os nodos. Dependendo da interpretação, estas redes podem ser vistas como redes de crenças e redes Bayesianas, para isto seria necessário envolver valores de probabilidade nas relações de verdadeiro e falso.

Uma rede de implicação pode ser usada, conforme o exemplo apresentado na figura 5, para representar o tipo de conhecimento necessário para que alguém que tenha escorregado na grama possa inferir sobre as possíveis causas.

Figura: Exemplo de redes de implicação

image

Diferentes métodos de raciocínio existem e podem ser aplicados a um mesmo grafo como o da figura 5, algumas vezes é necessária a inclusão de anotações para indicar valores verdadeiros ou probabilidades. As principais abordagens são:

Lógica
métodos de inferência lógica são utilizados em sistema de manutenção da verdade (TMS). Um TMS iniciaria em nodos onde valores verdadeiros são conhecidos, propagando estes valores através da rede. Para o caso da pessoa que escorregou na grama, o sistema iniciaria com valor T para o fato de que a grama está escorregadia, e a partir disto faria a propagação para os outros nodos em busca das possíveis conclusões. Adicionalmente poderiam ser informados outros fatos conhecidos, por exemplo, o fato de se estar na estação das chuvas, este segundo fato seria também propagado e contribuiria para a conclusão final.

Probabilística
muito do raciocínio empregado na abordagem lógica pode ser também empregado na probabilística, na qual também podem ser construídos TMSs. Neste caso a verdade seria considerada com probabilidades iguais a 1.0 e a falsidade com valores iguais a 0.0. Uma contínua faixa de probabilidades existe entre o 0.0 e o 1.0, este fato leva a possibilidade de interpretações mais refinadas dos estados, bem como aumenta a complexidade em termos de processamento da rede. O trabalho de [PEA 96] apresenta alternativas para o uso deste tipo de rede abordando o tratamento de incertezas.

Redes Executáveis

As redes executáveis contém mecanismos que permitem a alteração dinâmica na própria rede. Três tipos de mecanismos são mais comumente utilizados:

  1. Passagem de mensagens – dados passados entre os nodos
  2. Procedimentos anexados – cada nodo possui um procedimento
  3. Transformações de grafos – combinar, modificar e quebrar grafos

Estes três mecanismos podem ser combinados de diversas formas. As mensagens passadas de nodo para nodo podem ser processadas por procedimentos anexos aos nodos, transformações no grafo podem também ser disparadas por mensagens que aparecem nos nodos.

Figura: Exemplo de redes executáveis

image

Programas dataflow podem ser considerados como redes executáveis com procedimentos anexados, o diagrama contém nodos passivos que armazenam dados, e nodos ativos que pegam dados na entrada fazem algum processamento e enviam os resultados para a saída. A figura 6 apresenta um exemplo de programa em dataflow no qual os nodos passivos são representados por uma caixa retangular, e os nodos ativos por um losango. Os labels nas caixas representam o tipo de dado em questão, e nos losangos o nome do procedimento a ser executado.

Um exemplo bastante utilizado de redes executáveis são as redes de Petri. As redes de Petri são um formalismo que combina passagem de um marcador com procedimentos. Assim como diagramas dataflow, as redes de Petri possuem nodos passivos, e nodos ativos, chamados respectivamente de lugares (places) e transições. Adicionalmente elas possuem um conjunto de regras para marcar lugares com pontos, chamados de tokens e para execução e disparo de transições. Para ilustrar o fluxo dos tokens, a figura 7 apresenta uma rede de Petri para uma parada de ônibus, onde três tokens representam as pessoas esperando e um token representa a chegada do ônibus.

Figura 7: Exemplo de Rede de Petri

image

 

Redes de Aprendizado

Um sistema de aprendizado, natural ou artificial, responde a novas informações através da alteração de sua representação interna do conhecimento. Os sistemas que utilizam redes podem se valer de três mecanismos para alteração de sua rede:

  1. Rote memory – conversão da nova informação em uma rede e adição da mesma na rede atual
  2. Alteração de pesos – Alteração de valores associados a nodos ou arcos
  3. Reestruturação – é o mais complexo de todos, e implica basicamente na alteração das conexões entre os nodos

Os sistemas que se utilizam de Rote memory são mais indicados para aplicações que necessitam da recuperação exata de dados. Sistemas que utilizam alteração de pesos (exemplo: redes neurais) são mais indicados para reconhecimento de padrões.

Figura 8: Uma rede neural

image

As redes neurais são um exemplo de rede semântica de aprendizado, estas redes realizam o aprendizado através da alteração de pesos associados aos nodos e arcos da rede. Na figura 8 é apresentado um exemplo de uma rede neural, nesta rede a entrada é uma seqüência de números que indicam a proporção relativa de algumas características selecionados e a saída é outra seqüência de números que indicam o conceito que mais se enquadra dados os valores de entrada. Em um aplicação, por exemplo, de reconhecimento de caracteres, as características seriam linhas, curvas e ângulos, e os conceitos seriam as representações das letras que possuem aquelas características.

Considerações Finais

As redes semânticas podem ser aplicadas em diversas áreas da computação. Muitos dos tipos de redes semânticas podem ser encarados como uma forma alternativa de processamento, tal como é o caso das redes neurais, ou das redes executáveis. As redes semânticas podem apresentar características muito boas para determinados tipos de problemas, tais como problemas de reconhecimento de padrões, e de tratamento de linguagem natural.

O uso de redes semânticas pode também trazer vantagens com relação a simplificação sobre a forma de representar o problema. Em alguns casos, como nas redes de implicação, podem ser estabelecidas relações de causa e efeito de forma bastante simplificada e intuitiva. Nestes casos, podem ser criados sistemas especialistas, nos quais o conhecimento é representado em uma codificação que o ser humano consegue interpretar sem grandes dificuldades.

Referências Bibliográficas

BRA 85
BRACHMAN, R. J.; SCHMOLZE, J. G. An overview of the KL-ONE knowledge representation system. Cognitive Science, v.9, n.2, p.171-216, 1985.

PEA 96
PEARL, J. Decision making under uncertainty. ACM Computing surveys, v.28, n.1, mar 1996.

SHA 79
SHAPIRO, S. C. The SNePS semantic network processing system. In: FINDLER, N. V. (Ed.). Associative networks: representation and use of knowledge by computers. New York: Academic Press, 1979. p.179-203.

SHA 92
SHAPIRO, S.; RAPAPORT, W. The SNePS family. Computers and Mathematics with Applications, Special Issue on Semantic Networks in Artificial Intelligence, Part 1, v.23, n.2-5, 1992.

SOW 2002
SOWA, J. F. Semantic networks. Disponível em: http://www.jfsowa.com/pubs/semnet.htm.

About this document …

Redes Semânticas

This document was generated using the LaTeX2HTML translator Version 2K.1beta (1.48)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -white -split 0 -dir html -address rreal@inf.ufrgs.br -white -no_navigation redes_semanticas.tex

The translation was initiated by Rodrigo Real on 2003-03-21


rreal@inf.ufrgs.br

30
Mar
08

Escultura – Os Candangos, de Bruno Giorgi – Ricardo Noblat: O Globo Online

Escultura – Os Candangos, de Bruno Giorgi – Ricardo Noblat: O Globo Online: “A escultura Os Guerreiros, mais conhecida como Os Candangos, está localizada na Praça dos Três Poderes, em Brasília. Erguida em 1959, a escultura de Bruno Giorgi é uma homenagem aos 80 mil trabalhadores responsáveis pela construção da capital. A obra mede oito metros de altura e é toda feita em bronze. Em 1987, foi restaurada pelo artista Zeno Zani.
Escultor e pintor, Bruno Giorgi nasceu em Mococa (SP). Em 1911 mudou-se com a família para Roma. No início da década de 20 estudou desenho e escultura. Após cumprir quatro anos de pena por conspiração contra o regime fascista, foi extraditado para o Brasil em 1935. Morou também em Paris, onde freqüentou as academias La Grande Chaumière e Ranson e conheceu Aristide Maillol, que passou a orientá-lo.
(Com colaboração de Catharina Mafra)”
30
Mar
08

Diretrizes: Regras de Negócios

Regras de Negócios
As regras de negócios são declarações de políticas ou condições que devem ser cumpridas.

Tópicos
Explicação

As regras de negócios são tipos de requisitos de como os negócios, incluindo suas ferramentas de negócios, devem operar. Elas podem ser leis e regulamentos impostos ao negócio, mas também expressam a arquitetura e o estilo de negócio escolhidos.

Níveis de Formalismo

As regras de negócios devem ser expressas rigorosa e formalmente para que sejam uma base para automação. Uma alternativa pode ser o uso da Linguagem de Restrição de Objetos (OCL) conforme especificado na Linguagem Unificada de Modelagem. [RUM98]

Exemplo:

É possível expressar um limite para o tamanho da equipe; por exemplo, menos de dez membros em uma equipe. Com a OCL, é possível definir essa regra de negócio com uma invariante:

context Team inv:

    self.numberOfMembers <= 10

Lembre-se que esse tipo de linguagem formal pode ser difícil de interpretar para muitos dos envolvidos; portanto, é preferível um estilo de linguagem mais natural. É possível definir um conjunto de expressões reservadas que são usadas para definir as regras. Essas expressões poderiam ser as mesmas das definidas em [ODL98]:

  • IF
  • ONLY IF
  • WHEN
  • THEN
  • ELSE
  • IT MUST ALWAYS HOLD THAT
  • IS CORRECTLY COMPLETED

Exemplo:

Nessa linguagem menos formal, o exemplo acima poderia ser:

IT MUST ALWAYS HOLD THAT o número dos membros da equipe é menor ou igual a 10.

Categorias de Regras de Negócios

As regras podem ser classificadas de várias formas, embora seja comum separá-las em regras de restrição e de derivação. [ODL98] As categorias podem ser subdivididas posteriormente conforme descrito abaixo:

  • Regras de restrição especificam políticas e condições que restringem o comportamento e a estrutura de objetos. 
  • Regras de estímulo e resposta restringem o comportamento especificando quando e se as condições devem ser verdadeiras para que o comportamento seja disparado. 
  • Regras de restrição de operação especificam as condições que devem ser verdadeiras antes e após uma operação para garantir que a operação seja executada corretamente. 
  • Regras de restrição de estrutura especificam políticas ou condições sobre classes, objetos e seus relacionamentos que não podem ser violados. 
  • Regras de derivação especificam políticas ou condições para deduzir ou calcular fatos de outros fatos. 
  • Regras de dedução especificam que se determinados fatos são verdadeiros, uma conclusão pode ser deduzida. 
  • Regras de cálculo derivam seus resultados pela forma de processar algoritmos, uma variante mais sofisticada de regras de dedução. 

Essa classificação de regras de negócios é prática para explicar quais são as regras de negócios, como localizá-las e como trabalhar com elas. Contudo, elas não são um grupo fixo ao qual é necessário fazer referência sempre. Portanto, nosso template de artefato de regras de negócios não mostra essa classificação; é proválvel que no seu projeto haja outros grupos (de domínio, de usuário ou de produto) que merecem ser exibidos.

Como as Regras de Negócios são Refletidas nos Modelos

Uma regra de negócio afeta a aparência do modelo. Ela também pode afetar as atividades de seqüência no diagrama de atividades, além de afetar as associações entre as entidades de negócios. Não é fácil converter algumas regras diretamente para a aparência de um diagrama; elas devem estar presentes em descrições dos elementos de modelos.

Independentemente, é útil mostrar regras de negócios como notas de texto, vinculadas ao elemento de modelo que elas afetam no diagrama.

Também é útil controlar regras de negócios em Atributos de Requisitos, para fins de rastreabilidade e relatório.

Regras de Estímulo e Resposta

Esse tipo de regra de negócio afeta o fluxo de trabalho de um caso de uso de negócios e pode ser rastreada nos casos de uso de negócios aos quais se aplica. É possível mostrar um caminho condicional ou alternativo através do fluxo de trabalho. Se as ações envolvidas são menos significativas, talvez seja suficiente deixar a avaliação da regra de negócio ser incluída em um estado de atividade.

No modelo de objetos de negócios, uma regra desse tipo poderia, por exemplo, afetar a forma como você descreve o ciclo de vida de uma entidade de negócios ou ser parte da descrição de uma operação em um trabalhador de negócio.

Exemplo:

Em uma organização de gerenciamento de pedidos, é possível encontrar a seguinte regra:

WHEN um Pedido é cancelado

IF um Pedido não é enviado

THEN fechar Pedido.

Essa regra de negócio é refletida mostrando dois caminhos alternativos em um fluxo de trabalho e especificamente usando condições de guarda e decisão em transições de saída.

image

A regra de negócio nesse caso é convertida em um caminho alternativo através do fluxo de trabalho

Regras de Restrição de Operação

Esse tipo de regra de negócio geralmente é convertida em precondições e pós-condições de um fluxo de trabalho ou em um caminho condicional ou alternativo em um fluxo de trabalho. Ele também pode ser uma meta de desempenho ou alguma outra regra não comportamental que deve ser rastreado nos casos de uso de negócios aos quais ela se aplica.

Exemplo:

Em uma organização de gerenciamento de pedidos, é possível encontrar a seguinte regra:

Enviar Pedido ao Cliente

ONLY IF O cliente tiver um endereço de entrega.

image

A regra de negócio é convertida em um caminho alternativo no fluxo de trabalho

Exemplo:

Um outro exemplo de regra de restrição de operação é:

IT MUST ALWAYS HOLD THAT

Todas as pesquisas do cliente devem ser respondidas dentro de 24 horas do seu recebimento

Essa regra de negócio seria convertida em uma meta de desempenho de um caso de uso de negócios. Consulte a seção sobre Meta de Desempenho em Diretrizes: Caso de Uso de Negócios.

Regras de Restrição de Estrutura

Esse tipo de regra de negócio afeta as relações entre instâncias de entidades de negócios. Elas são expressas pela existência de uma associação entre duas entidades de negócios; às vezes como uma multiplicidade na associação. 

Exemplo:

Em uma organização de gerenciamento de pedidos, é possível encontrar a seguinte regra:

IT MUST ALWAYS HOLD THAT

um Pedido se refere a 1 Produto no mínimo.

image

Essa regra de negócio é convertida em uma associação com a multiplicidade de 1..*.

Regras de Dedução

Geralmente, as regras de dedução parecem semelhantes aos tipos de regra de estímulo e resposta, de restrição de operação ou de restrição de estrutura; a diferença é a existência de algumas etapas que precisam ser atingidas para chegar à conclusão. A regra implica um método que precisa ser refletido em um estado de atividade do fluxo de trabalho e eventualmente em uma operação em um trabalhador de negócio ou entidade de negócios.

Exemplo:

Talvez você tenha definido a seguinte regra para determinar o status de um cliente:

Um Cliente é um Bom Cliente IF AND ONLY IF

as faturas não pagas enviadas a esse Cliente têm menos de 30 dias.

image

Essa regra de negócio corresponde a um caminho alternativo através do fluxo de trabalho, e o método prescrito será parte da atividade Avaliar Cliente

Regras de Cálculo

As regras de cálculo são diferentes das regras de dedução; a diferença é que o método é mais formal e semelhante a um algoritmo. Assim como as regras de dedução, esse método precisa ser rastreado em uma atividade no fluxo de trabalho e eventualmente em uma operação em um trabalhador de negócio ou uma entidade de negócios.

Exemplo:

Uma regra de cálculo pode especificar cálculo de valor:

O preço líquido de um Produto IS COMPUTED AS FOLLOWS

preço do produto * (1+porcentagem de imposto/100).

A avaliação do preço líquido poderia ser parte da atividade Enviar Pedido quando você prepara a cobrança a ser enviada com o pedido. Nesse modelo de objetos de negócios, essa regra é convertida em associações e operações.

image

Essa regra precisa ser refletida como um método na operação de cálculo do preço líquido, mas também implica a necessidade de relacionamentos entre classes no modelo. 

Copyright  (c) 1987 – 2001 Rational Software Corporation

Rational Unified Process   

30
Mar
08

OCL – Object Constraint Language

30
Mar
08

ATENAS: Um Sistema Gerenciador de Regras de Negócio

29
Mar
08

Digital Drops: Vestax Guber CM-02: Toca-Discos com USB e Muito Estilo





Digital Drops: Vestax Guber CM-02: Toca-Discos com USB e Muito Estilo: “A turntable Vestax Guber CM-02 tem o mesmo design da CM-01, mas com um diferencial muito interessante, uma porta USB que é perfeita para você converter seus LPs para o formato digital no seu PC ou Mac.
Este toca-discos toca LPs de 33 1/3, 45 e 78 rpm, tem um braço em ‘S’, motor “direct drive” e pré-amplificador embutido.”
28
Mar
08

Imagens mágicas e ilusões de óptica ( Ilusao Optica Imagem Pintura Magia )

28
Mar
08

IBM RedBook: Livros gratuitos sobre desenvolvimento com Java | Meio Bit

IBM RedBook: Livros gratuitos sobre desenvolvimento com Java Meio Bit: “Estava procurando por material sobre J2EE, SOA, RUP e UML e sem querer acabei encontrando um pequeno tesouro em material farto, gratuito e bem organizado, com os cumprimentos da IBM. São os RedBooks, 2179 livros publicados (até o momento) em PDF que também podem ser encomendados impressos em papel.
Um dos livros que estou lendo é o Rational Application Developer V7 Programming Guide. O material, obviamente, apresenta as soluções puxando para o lado do Websphere, o equivalente da IBM ao Visual Studio, mas voltado para o Java e integração com ferramentas e processos da Rational. Mas o conteúdo é apresentado de tal forma que mesmo quem não trabalha com essas ferramentas, pode usufruir de capítulos como o o capítulo 6, Rational Unified Process (RUP) e Unified Modeling Language (UML) e o capítulo 18, sobre WebServices e Service-Oriented Architecture (SOA).”