Entradas

Red Neuronal Hopfield

Imagen
Jhon Hopfield propuso varios modelos de redes neuronales en los cuales la salida de cada neurón, se convertia en entrada nuevamente ( retroalimentación ), hasta " estabilzarse " (los cambios entre la nueva salida con la anterior debe disminuir, o puede que nunca llegue a cero la diferencia, función de energía) En éste tipo de red se toma como parametro de medición el tiempo , entre otros factores, se puede utilizar para resolver problemas de optimización o como memoria asociativa. Para ésta RNA, las entradas suelen ser binarias. ARQUITECTURA Es una red Monocapa, con N neuronas, la que tiene por salida 0 o 1. Vimos anteriormente que en ésta red existe la retroalimentación, sin embargo la salida de una neurona no es entrada de la misma. Existe igualdad en los pesos, son simétricos (w ij =w ji ). w12 = w21 w13 = w31 w32 = w23 MODELO DE RED     n: número de nodos en la red. X i : Entradas de la red (todas se ejecutan al mismo tiempo, t = 0 ). U i : Sal...

Expresiones Lambda

Imagen
λCálculo El cálculo lambda fue desarrollado por Alonso Church en la década de los 30, con el objeto de dar una teoría general de las funciones. Algunos Lenguajes de Programación que soportan lambda cálculo son los que usan programación funcional como: Haskell, Python(HaPy), Lisp, entre otros. Transformar una función en λ Cálculo f(x)= 3x+2-y En expresion lambda (λx. (-(+ 2 (* 3 x)) y)) la cual se divide en: ARGUMENTO λx APLICACION (-(+ 2 (* 3 x)) y) Para la aplicación a la segunda parte de la función se le transforma de infijo a prefijo. Código Pasamos la ecuación ingresada a expresión lambda, separando argumento de aplicación   Revisar código completo:  https://gitlab.com/JSiapo/Lambda-Calculo ENLACES RELACIONADOS Especificación formal de Sistemas

Algoritmo de Recorte de Líneas - Cohen-Sutherland

Imagen
En este post explicaré el algoritmo de recorte de lineas Cohen-Shuterland y su aplicación en Opengl. El algoritmo de recorte de Cohen-Shuterland: Este algoritmo realiza varias comprobaciones iniciales para descubrir si se puede evitar cálculos de las intersecciones. Eliminar porciones de la escena fuera del espacio de visualización (ventana de recorte). Región rectangular, coordenadas límite (XWmin, YWmin) – (XWmax, YWmax). Este es uno de los procedimientos de recorte de líneas mas antiguo y común. A todos los extremos de línea de una imagen se asigna un código binario de cuatro dígitos, que se conoce como código de región , el cual identifica la localización del punto con respecto de las fronteras del rectángulo de recorte. De derecha a izquierda: bit 1: izquierda bit 2: derecha bit 3: abajo bit 4: arriba Se calculan las diferencias entre las coordenadas de los extremos de la línea y las fronteras de recorte. Se utiliza el bit del signo resulta...

Instalar FreeVPN en Linux

Imagen
En este post explicaré paso a paso como usar una VPN en linux, específicamente una gratuita llamada Free VPN . Recordar: Éste post es sólo para fines de aprendizaje, no me responsabilizo por el buen o mal uso que le puedan dar. La misma página coloca las reglas también. 1. Descargamos cualquiera de los siguientes archivos En mi caso me descargo  DE OpenVPN Certificate Bundle 2. Extracción y modificación de archivos Al extraer elegir cualquier archivo, de preferencia el que contiene el tcp80. Duplicar el archivo Renombrar el archivo duplicado a  vpnbook-ca.crt 3. Instalar dependencias La gran mayoria de distribuciones linux ya tienen instaladas la gran mayoría de esas dependencias. 4. Configurar VPN Vamos a configuraciones de red, en vpn presionamos en importar Elegimos el archivo original (*.ovpn) del que duplicamos anteriormente. (Opcional) cambiamos de nombre a la VPN en mi caso le pondré FreeVPN. Colocamos ...

Sistemas Distribuidos - Tolerancia a fallos

Imagen
INTRODUCCIÓN A LA TOLERANCIA A FALLOS INTRODUCCIÓN Una característica donde los sistemas distribuidos difieren de un sistema de una sola máquina es la noción de fallo parcial . En un sistema distribuido una falla puede afectar la operación de algunos componentes y otros no verse afectados. En un sistema no distribuido, una falla afecta todos los componentes. Un objetivo importante en el diseño de Sistemas Distribuidos es construirlos de manera que puedan recuperarse de fallas parciales sin que se afecte. Siempre que ocurra una falla, el Sistema Distribuido debe continuar operando de modo aceptable mientras se soluciona, es decir, tolerar las fallas . CONCEPTOS BÁSICOS Ser tolerante a fallas está fuertemente relacionado a los sistemas fiables, y ello involucra lo siguiente: DISPONIBILIDAD Propiedad por la cual, una sistema está listo para ser utilizado inmediatamente . Probabilidad de que un sistema esté operando correctamente en cualquier momento dado y disponible a ...

Primitivas Gráficas - Algoritmo de la Ecuación General para Circunferencias

Imagen
Pre-requisitos: Instalar OpenGL en Linux  (si usas linux) Instalar OpenGL en Windows (si usas windows) Inicializar OpenGL en C++ Ecuación General de la circunferencia $${({x}-{x}_{c})}^{2}+{({y}-{y}_{c})}^{2}={r}^{2}$$ despejando "y" : $$y=y_c±\sqrt { r^2−(xc−x)^2}$$ Algoritmo Ejemplo -Dibujar Circunferencia de centro (2,4) y radio 7 $$x_c=2, y_c=4, r=7 $$ usando $$y=y_c+\sqrt { r^2−(xc−x)^2}$$ usando $$y=y_c-\sqrt { r^2−(xc−x)^2}$$ pintando los puntos calculados: El algoritmo de la ecuación general es ineficaz para pintar circunferencias. ver código completo aqui Enlaces Relacionados Computación Gráfica