• No se han encontrado resultados

ClaseCC-FutboldeRobots.pptx

N/A
N/A
Protected

Academic year: 2020

Share "ClaseCC-FutboldeRobots.pptx"

Copied!
43
0
0

Texto completo

(1)

Ingeniería de Software II

Clase de C&C

Ingeniería de Software II – FCEN – UBA - 2010

Futbol de robots

(2)

Enunciado

Ingeniería de Software II – FCEN – UBA - 2010

El presente ejercicio contempla el diseño de la

arquitectura de un sistema de control de fútbol de robots. El propósito de este sistema es competir en un juego

donde una serie robots físicos compiten por convertir la mayor cantidad de goles contra otro sistema idéntico a nivel físico (misma cantidad de piezas, mismo espacio de juego, misma configuración de cancha y pelota

compartida)

El espacio de juego o cancha consiste en un marco de 200 cm x 100 cm, dos espacios de “arco” que son sensores de 40 cm dispuestos en cada lado de 100 cm de la cancha, y donde un objeto distinguido como la pelota se desliza a partir del impacto ejercido por los robots. Estos elementos pertenecen a la infraestructura común provista por la

(3)

Enunciado

Ingeniería de Software II – FCEN – UBA - 2010

Cada equipo provee para la competencia su propia

infraestructura de juego consistente de 3 jugadores, una cámara de monitoreo para identificar el posicionamiento de los jugadores y de la pelota en la cancha, y un sistema que recibe las imágenes de esta cámara y toma

decisiones para indicar sobre las movidas tácticas a los robots jugadores en pos de convertir la mayor cantidad de goles e imposibilitar que el equipo contrario convierta los propios. Cada uno de los 3 robots de cada equipo es

distinguido con una cantidad de puntos en rojo o azul que distinguen por color a los equipos, y por la cantidad de

puntos a un robot de otro dentro del mismo equipo para el sistema de control; la pelota es por otro lado coloreada

con negro.

(4)

Enunciado

Ingeniería de Software II – FCEN – UBA - 2010

La cámara común genera 3 imágenes por segundo, las cuales son entregadas en forma simultánea a cada

sistema de control de robots quienes las someten dos

acciones: identificar la posición de la pelota e identificar la posición de todos los jugadores (propios y contrarios).

La identificación de la posición de la pelota se basa en aplicar un algoritmo de filtro que detecta el negro de la pelota por encima de los otros colores en forma eficiente. Esta identificación es optimizada al reducir la porción de la imagen a procesar al mínimo posible en función del conocimiento de la posición de la pelota que se tiene en base al procesamiento previo. Gracias a esta optimización es posible computar una porción de imagen por señal

recibida (> 3 computaciones por segundo de filtro). De no encontrarse la pelota en el espacio buscado se procede a buscar sobre toda la imagen de cancha en pos de

(5)

Enunciado

Ingeniería de Software II – FCEN – UBA - 2010

La identificación de los robots se realiza a partir de aplicar un filtro de rojos y azules (dos filtros) demorando cada

una 1 segundo. Esto hace que se pueda identificar el estado de posición de jugadores cada 6 muestreos de la cámara. Se requiere que el sistema que controla la

estrategia del juego de cada equipo guíe a los robots a convertir la mayor cantidad de goles posibles y evitar que el contrario haga los propios, a partir de guiar a los robots a través de sus actuadores de dirección y velocidad. Dado que constantemente se encuentran mejoras en las

estrategias, el sistema debe ser flexible a la hora de cambiar de una estrategia a otra. En ciertas ocaciones, las imágenes pueden venir con defectos que dificultan la identificación, con lo cual los filtros informan datos

erroneos. El sistema debe en estos casos descartarlos y utilizar la historia y proyecciones de los movimientos.

a) Identifique los subsistemas del dominio, identifique (no hace falta especificarlos) los 3 escenarios más relevantes de acuerdo a su criterio, determine qué tácticas usa y

(6)

Ingeniería de Software II – FCEN – UBA - 2010

(7)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

(8)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

(9)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

(10)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

(11)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

(12)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

(13)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

Filtros para la pelota

- Optimizado

(14)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

Filtros para la pelota

- Optimizado

(15)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

Filtros para la pelota

- Optimizado

> 3 muestreos x seg. - Total

(16)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

Filtros para la pelota

- Optimizado

> 3 muestreos x seg.

- Total

(17)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

Filtros para la pelota

- Optimizado

> 3 muestreos x seg. - Total

1 muestreo x seg.

Filtros para los jugadores

- Equipo rojo

1 muestreo x seg. - Equipo azul

(18)

Ingeniería de Software II – FCEN – UBA - 2010

...

..

.

...

..

.

Cámara

- 3 imágenes por segundo

Entendiendo el Problema…

Filtros para la pelota

- Optimizado

> 3 muestreos x seg. - Total

1 muestreo x seg.

Filtros para los jugadores

- Equipo rojo

1 muestreo x seg. - Equipo azul

1 muestreo x seg.

Control de los robots

(19)

Ingeniería de Software II – FCEN – UBA - 2010

Cámara

- 3 imágenes por segundo

Resumiendo…

Filtros para la pelota

- Optimizado

> 3 muestreos x seg. - Total

1 muestreo x seg.

Filtros para los jugadores

- Equipo rojo

1 muestreo x seg. - Equipo azul

1 muestreo x seg.

Control de los robots

(20)

Ingeniería de Software II – FCEN – UBA - 2010

Cámara

- 3 imágenes por segundo

Resumiendo…

Filtros para la pelota

- Optimizado

> 3 muestreos x seg. - Total

1 muestreo x seg.

Filtros para los jugadores

- Equipo rojo

1 muestreo x seg. - Equipo azul

1 muestreo x seg.

Control de los robots

- Actuador Dirección - Actuador Velocidad

a) Identificar los subsistemas del dominio

b) Identificar los escenarios

c) Especificar el modelo de C&C asociado con el sistema

descrito.

(21)

Ingeniería de Software II – FCEN – UBA - 2010

Identificar los subsistemas del dominio…

(22)

Ingeniería de Software II – FCEN – UBA - 2010

Identificar los subsistemas del dominio…

Encargado de procesar las

imágenes que llegan desde

la cámara

Encargado de procesar las

imágenes que llegan desde

la cámara

Filtrador Imágenes

Filtrador Imágenes

Encargado de controlar los

robots

Encargado de controlar los

robots

Actuador

(23)

Ingeniería de Software II – FCEN – UBA - 2010 Ingeniería de Software II – FCEN – UBA - 2010

Identificar los subsistemas del dominio…

Encargado de procesar las

imágenes que llegan desde la

cámara

Encargado de procesar las

imágenes que llegan desde la

cámara

Filtrador Imágenes

Filtrador Imágenes

Encargado de controlar los

robots

Encargado de controlar los

robots

Actuador

Actuador

Encargado de determinar los

movimientos de acuerdo a las

posiciones de los robots y la

pelota

Encargado de determinar los

movimientos de acuerdo a las

posiciones de los robots y la

pelota

Subsistema de

Estrategia

(24)

Ingeniería de Software II – FCEN – UBA - 2010 Ingeniería de Software II – FCEN – UBA - 2010

Identificar los escenarios…

(25)

Ingeniería de Software II – FCEN – UBA - 2010

Identificar los escenarios…

Cám

ara Cám •

ara Fuente Fuente • La cá ma ra en vía una im age

n age im una vía en ra ma cá La •

n Estímulo Estímulo • Filt rad or de Im áge

nes áge Im de or rad Filt •

nes Artefacto Artefacto • Func io na mie nto N orm

al orm N nto mie na io Func •

al Ambiente Ambiente • Se id en tifi ca la p osi ció n d e l a p elo ta y lo

s lo ta y elo a p e l n d ció osi p la ca s tifi re en ado id jugSe •

s s re ado jug

Respuesta Respuesta • Máx im o 1 se gund

o gund se o 1 im Máx •

o

Medida de la respuesta

Medida de la respuesta

(26)

Ingeniería de Software II – FCEN – UBA - 2010

Identificar los escenarios…

• In terno a l si stem

a stem l si a terno In •

a Fuente Fuente • Se ca lcul ó l a p osi ció n d e l os jug ado re s y

la s y re ado jug os e l n d ció osi a p ó l lcul ta ca lo pe Se •

la ta lo pe

Estímulo Estímulo • Sub sist em a d e e stra teg

ia teg stra e e a d em sist Sub •

ia Artefacto Artefacto • Lo s d atos cal cul ado s ti ene n e rro re

s re rro n e ene s ti ado cul cal atos s d Lo •

s Ambiente Ambiente • Se d esc artan lo s o utl ie rs y se ut iliz

an iliz ut y se rs ie utl s o lo nes io artan esc mac d Se esti •

an nes io mac esti

Respuesta Respuesta • El 90 % d e l os ca so s se d esc arta n lo

s n lo arta esc d s se ente so ca ctam os rre e l co rs % d ie 90 outl El •

s ente ctam rre co rs ie outl

Medida de la respuesta

Medida de la respuesta

(27)

Ingeniería de Software II – FCEN – UBA - 2010

Identificar los escenarios…

• Eq uip o d e d esar ro

llo ro esar e d o d uip Eq •

llo Fuente Fuente • Se d esar ro lló una nuev a e strate gia pa ra

el ra pa gia strate a e nuev una lló ro esar go d jueSe •

el go jue

Estímulo

Estímulo

Siste

ma Siste •

ma Artefacto Artefacto • En tie mp o d e d esar ro

llo ro esar e d o d mp tie En •

llo Ambiente Ambiente • Se m od ifi ca la est rate gia a ut iliz

ar iliz a ut gia rate est la ca ifi od m Se •

ar Respuesta Respuesta • No se re qu iri ero n m od ifi cac io nes al có dig

o dig có al nes io cac ifi od n m ero iri a qu re stem se l si de No •

o a stem l si de

Medida de la respuesta

Medida de la respuesta

(28)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño

(29)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño

cmp Components

(30)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño

cmp Components

Filtrador Imágenes Estrategia Actuador Robot Camara

(31)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

(32)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

(33)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

-¿Podemos disminuir la cantidad o descartar imágenes que

nos llegan de la cámara?

(34)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

(35)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

Y ahora, ¿Permite cumplir con el escenario?

cmp Components

Estrategia Actuador Robot Camara

(36)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

(37)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

Y si no encontramos la pelota con el optimizado…

cmp Components2

(38)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

Y si no encontramos la pelota con el optimizado…

cmp Components2

Filtrador Pelota Opt Filtrador Pelota Std

(39)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

Y si no encontramos la pelota con el optimizado…

cmp Components2

Filtrador Pelota Opt Filtrador Pelota Std

¿Qué problemas trae la concurrencia?

- Sincronización

cmp Components2

(40)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

Y si no encontramos la pelota con el optimizado…

cmp Components2

Filtrador Pelota Opt Filtrador Pelota Std

¿Qué problemas trae la concurrencia?

- Sincronización

- ¿Y en base a qué se sincroniza?

cmp Components2

(41)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

Y si no encontramos la pelota con el optimizado…

cmp Components2

Filtrador Pelota Opt Filtrador Pelota Std

¿Qué problemas trae la concurrencia?

- Sincronización

- ¿Y en base a qué se sincroniza?

cmp Components2

Sincronizador cmp Components2

(42)

Ingeniería de Software II – FCEN – UBA - 2010

Especificar C&C …

-

Performance

- Primer diseño - Tácticas

- Concurrencia

- Mantener múltiples copias del procesamiento

cmp Components

:Actuador :Actuador Estrategia

Actuador Robot Camara

Filtrador Azul Filtrador Roj o Filtrador Pelota Std Filtrador Pelota Opt

Etiquetador

(43)

Ingeniería de Software II – FCEN – UBA - 2010

Dudas…

Referencias

Documento similar

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

Como medida de precaución, puesto que talidomida se encuentra en el semen, todos los pacientes varones deben usar preservativos durante el tratamiento, durante la interrupción

The 'On-boarding of users to Substance, Product, Organisation and Referentials (SPOR) data services' document must be considered the reference guidance, as this document includes the

In medicinal products containing more than one manufactured item (e.g., contraceptive having different strengths and fixed dose combination as part of the same medicinal

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)

Package Item (Container) Type : Vial (100000073563) Quantity Operator: equal to (100000000049) Package Item (Container) Quantity : 1 Material : Glass type I (200000003204)