Baixe o app para aproveitar ainda mais
Prévia do material em texto
Regras e EncadeamentosRegras e Encadeamentos Marco H. TerraMarco H. Terra Introdução à Inteligência Artificial IntroduçãoIntrodução nn Este capEste capíítulo discute a utilizatulo discute a utilizaçção de regras ão de regras IFIF--THENTHEN para para resoluresoluçção de problemas. Tais regras serão manipuladas com ão de problemas. Tais regras serão manipuladas com dois objetivos: (i) inferência de conclusões a partir de um dois objetivos: (i) inferência de conclusões a partir de um conjunto de assertivas, (conjunto de assertivas, (iiii) valida) validaçção de uma hipão de uma hipóótese dada tese dada se ela atender as vse ela atender as váárias premissas que a fundamentam. rias premissas que a fundamentam. Estas idEstas idééias fundamentam os sistemas especialistas.ias fundamentam os sistemas especialistas. Tópicos de DiscussãoTópicos de Discussão nn Encadeamento: para frente e para trEncadeamento: para frente e para tráás.s. nn Sistemas dedutivos e reativos baseados em regras.Sistemas dedutivos e reativos baseados em regras. nn Exemplos: IdentificaExemplos: Identificaçção de animais (sistemas de ão de animais (sistemas de diagndiagnóóstico) e seqstico) e seqüüência de embalagem de mercadorias ência de embalagem de mercadorias (a(açções para configurar sistemas fões para configurar sistemas fíísicos).sicos). Sistemas baseados em regras Sistemas baseados em regras nn Sistemas para resoluSistemas para resoluçção de problemas baseados em regras ão de problemas baseados em regras são constitusão constituíídos por regras definidas como abaixo:dos por regras definidas como abaixo: RnRn IfIf ifif11 ifif22 :: ififpp ThenThen thenthen11 thenthen22 :: thenthenqq -- Os padrões IF são chamados de antecedentes e os padrões Os padrões IF são chamados de antecedentes e os padrões THEN são denominados conseqTHEN são denominados conseqüüentes.entes. Definições importantesDefinições importantes nn Um Um fatofato expressa uma situaexpressa uma situaçção ou declaraão ou declaraçção que ão que éé verdadeira.verdadeira. nn Uma Uma assertivaassertiva éé uma declarauma declaraçção que algo ão que algo éé um fato, logo um fato, logo ela pode ser verdadeira ou falsa.ela pode ser verdadeira ou falsa. nn A A memmemóória de trabalhoria de trabalho de um sistema destes consiste de de um sistema destes consiste de uma coleuma coleçção de assertivas verdadeiras.ão de assertivas verdadeiras. nn Um Um antecedente satisfeitoantecedente satisfeito éé aquele em que um padrão IF se aquele em que um padrão IF se casa com uma assertiva da memcasa com uma assertiva da memóória de trabalho.ria de trabalho. nn Uma Uma regra engatilhadaregra engatilhada éé aquela que todos seus padrões IF aquela que todos seus padrões IF estão satisfeitos.estão satisfeitos. nn Uma Uma regra disparadaregra disparada éé aquela que estabelece uma nova aquela que estabelece uma nova assertiva ou executa uma aassertiva ou executa uma açção.ão. Tipos de sistemas baseados em regrasTipos de sistemas baseados em regras nn Os sistemas baseados em regras possuem padrões IF da Os sistemas baseados em regras possuem padrões IF da mesma natureza contudo diferem entre si com respeito aos mesma natureza contudo diferem entre si com respeito aos padrões THEN. Baseado nestas diferenpadrões THEN. Baseado nestas diferençças, tais sistemas as, tais sistemas são divididos em sistemas dedutivos e sistemas reativos.são divididos em sistemas dedutivos e sistemas reativos. nn Sistema dedutivoSistema dedutivo éé um sistema baseado em regras no qual um sistema baseado em regras no qual os padrões THEN especificam novas assertivas a serem os padrões THEN especificam novas assertivas a serem anexadas anexadas àà memmemóória de trabalho.ria de trabalho. nn Sistema reativoSistema reativo éé um sistema baseado em regras no qual os um sistema baseado em regras no qual os padrões THEN especificam apadrões THEN especificam açções a serem tomadas pelo ões a serem tomadas pelo sistema.sistema. Representações para sistemas baseados em regras: memória de trabalho e base de regras Representações para sistemas baseados em regras: memória de trabalho e base de regras nn Uma Uma memmemóória de trabalhoria de trabalho éé uma representauma representaçção na qual:ão na qual: -- Lexicamente, existem sLexicamente, existem síímbolos e smbolos e síímbolos de padrões mbolos de padrões que são especque são especííficos da aplicaficos da aplicaçção.ão. -- Estruturalmente, assertivas são listas de sEstruturalmente, assertivas são listas de síímbolos e mbolos e padrões são listas de spadrões são listas de síímbolos ou smbolos ou síímbolos de padrões, mbolos de padrões, todos dependentes da aplicatodos dependentes da aplicaçção.ão. -- Semanticamente, as assertivas denotam fatos em um Semanticamente, as assertivas denotam fatos em um mundo escolhido.mundo escolhido. -- Procedimentalmente, possui rotinas para adicionar Procedimentalmente, possui rotinas para adicionar assertivas assertivas àà memmemóória de trabalho e rotinas para produzir ria de trabalho e rotinas para produzir uma lista de assertivas na memuma lista de assertivas na memóória de trabalho que se ria de trabalho que se casam com assertivas de um padrão.casam com assertivas de um padrão. Representações para sistemas baseados em regras: base de regras Representações para sistemas baseados em regras: base de regras nn Uma Uma base de regrasbase de regras éé uma representauma representaçção na qual:ão na qual: -- Lexicamente, existem sLexicamente, existem síímbolos e smbolos e síímbolos de padrões mbolos de padrões que são especque são especííficos da aplicaficos da aplicaçção.ão. -- Estruturalmente, padrões são listas de sEstruturalmente, padrões são listas de síímbolos ou mbolos ou ssíímbolos de padrões dependentes da aplicambolos de padrões dependentes da aplicaçção e regras ão e regras consistem de padrões IF ou THEN.consistem de padrões IF ou THEN. -- Semanticamente, regras denotam restriSemanticamente, regras denotam restriçções que serão ões que serão checadas nos procedimentos.checadas nos procedimentos. -- Procedimentalmente, possui rotinas que constrProcedimentalmente, possui rotinas que constróóem regras em regras dada um lista ordenada de padrões IF e THEN e rotinas dada um lista ordenada de padrões IF e THEN e rotinas para produzir uma lista de padrões IF para produzir uma lista de padrões IF oror THEN em regras THEN em regras dadas.dadas. Tipos de encadeamentoTipos de encadeamento nn Encadeamento para frente: Um sistema baseado em regras Encadeamento para frente: Um sistema baseado em regras que executa encadeamento para frente utiliza assertivas que executa encadeamento para frente utiliza assertivas dadas e assertivas inferidas para deduzir novas assertivas dadas e assertivas inferidas para deduzir novas assertivas ou realizar uma aou realizar uma açção. O processamento se dão. O processamento se dáá partindo das partindo das assertivas para chegar a uma conclusão.assertivas para chegar a uma conclusão. nn Encadeamento para trEncadeamento para tráás: Um sistema baseado em regras s: Um sistema baseado em regras que executa encadeamento para trque executa encadeamento para tráás transforma uma s transforma uma assertiva que se quer provar ou uma aassertiva que se quer provar ou uma açção que se quer tomar ão que se quer tomar em uma hipem uma hipóótese. A partir datese. A partir daíí usa as regras retroativamente usa as regras retroativamente para analisar as assertivas que suportam a hippara analisar as assertivas que suportam a hipóótese em tese em questão.questão. Um sistema dedutivo que identifica animaisUm sistema dedutivo que identifica animais nn Este tEste tóópico descreve um sistema dedutivo para realizar pico descreve um sistema dedutivo para realizar identificaidentificaçção: o ZOOKEEPER. Este sistema produz uma ão: o ZOOKEEPER. Este sistema produz uma cadeia de conclusões que servem para identificar um cadeia deconclusões que servem para identificar um animal examinado.animal examinado. nn CaracterCaracteríísticas do ZOOKEEPER:sticas do ZOOKEEPER: -- Utiliza regras sem antecedentes longos.Utiliza regras sem antecedentes longos. -- Gera assertivas intermediGera assertivas intermediáárias como sarias como saíídas das regras.das das regras. -- Combina estas assertivas e aquelas originais para Combina estas assertivas e aquelas originais para produzir uma conclusão.produzir uma conclusão. -- Observa hObserva háábitos e caracterbitos e caracteríísticas fsticas fíísicas para identificar sicas para identificar os animais.os animais. -- Neste exemplo, podeNeste exemplo, pode--se distinguir sete animais: leopardo, se distinguir sete animais: leopardo, tigre, girafa, zebra, avestruz, pingtigre, girafa, zebra, avestruz, pingüüim e albatroz.im e albatroz. Regras do ZOOKEEPER - Z1Regras do ZOOKEEPER - Z1 Z1Z1 IfIf ?x tem cabelo?x tem cabelo ThenThen ?x ?x éé um mamum mamíífero fero -- Esta Esta éé uma regra que observa caracteruma regra que observa caracteríísticas fsticas fíísicas.sicas. -- As regras contêm variAs regras contêm variááveis x inicialmente sem valores. veis x inicialmente sem valores. Elas vão assumir valores quando os antecedentes são Elas vão assumir valores quando os antecedentes são comparados comparados ààs assertivas dadas. Quando as varis assertivas dadas. Quando as variááveis veis assumem valores dizassumem valores diz--se que elas estão instanciadas.se que elas estão instanciadas. Regras do ZOOKEEPER - Z2-Z4Regras do ZOOKEEPER - Z2-Z4 Z2Z2 IfIf ?x d?x dáá leiteleite ThenThen ?x ?x éé um mamum mamííferofero Z3Z3 IfIf ?x tem penas?x tem penas ThenThen ?x ?x éé um pum páássarossaro Z4Z4 IfIf ?x voa?x voa ?x põe ovos?x põe ovos ThenThen ?x ?x éé um pum páássarossaro -- Regras determinam classe biolRegras determinam classe biolóógicas dos animais, ondegicas dos animais, onde Z2 e Z4 observam hZ2 e Z4 observam háábitos e Z3 observa caracterbitos e Z3 observa caracteríísticas fsticas fíísicas.sicas. -- Z4 tem dois antecedentes para evitar conflito.Z4 tem dois antecedentes para evitar conflito. Regras do ZOOKEEPER - Z5-Z6Regras do ZOOKEEPER - Z5-Z6 Z5Z5 IfIf ?x ?x éé um mamum mamííferofero ?x come carne?x come carne ThenThen ?x ?x éé um carnum carníívorovoro Z6Z6 IfIf ?x ?x éé um mamum mamííferofero ?x tem dentes pontudos?x tem dentes pontudos ?x tem garras?x tem garras ?x tem olhos pontiagudos?x tem olhos pontiagudos ThenThen ?x ?x éé um carnum carníívorovoro -- Regras determinam se animal Regras determinam se animal éé carncarníívoro.voro. -- Z5 observa hZ5 observa háábitos e Z6 observa caracterbitos e Z6 observa caracteríísticas fsticas fíísicas.sicas. -- Regras jRegras jáá utilizam assertivas geradas por regras utilizam assertivas geradas por regras anteriormente definidas.anteriormente definidas. Regras do ZOOKEEPER - Z7-Z8Regras do ZOOKEEPER - Z7-Z8 Z7Z7 IfIf ?x ?x éé um mamum mamííferofero ?x tem cascos?x tem cascos ThenThen ?x ?x éé um unguladoum ungulado Z8Z8 IfIf ?x ?x éé um mamum mamííferofero ?x rumina ?x rumina ThenThen ?x ?x éé um unguladoum ungulado -- Regras determinam se animal Regras determinam se animal éé ungulado.ungulado. -- Z7 observa caracterZ7 observa caracteríísticas fsticas fíísicas e Z8 observa hsicas e Z8 observa háábitos.bitos. Regras do ZOOKEEPER - Z9-Z10Regras do ZOOKEEPER - Z9-Z10 Z9Z9 IfIf ?x ?x éé carncarníívorovoro ?x tem cor amarelo tostada?x tem cor amarelo tostada ?x tem manchas escuras?x tem manchas escuras ThenThen ?x ?x éé um leopardoum leopardo Z10Z10 IfIf ?x ?x éé um carnum carníívorovoro ?x tem cor amarelo tostada?x tem cor amarelo tostada ?x tem listas pretas?x tem listas pretas ThenThen ?x ?x éé um tigreum tigre -- Regras identificar os animais carnRegras identificar os animais carníívoros.voros. Regras do ZOOKEEPER - Z11-Z12Regras do ZOOKEEPER - Z11-Z12 Z11Z11 IfIf ?x ?x éé um unguladoum ungulado ?x tem pernas longas ?x tem pernas longas ?x tem pesco?x tem pescoçço compridoo comprido ?x tem cor amarelo tostada?x tem cor amarelo tostada ?x tem manchas escuras?x tem manchas escuras ThenThen ?x ?x éé uma girafauma girafa Z12Z12 IfIf ?x ?x éé um unguladoum ungulado ?x tem cor branca?x tem cor branca ?x tem listas pretas?x tem listas pretas ThenThen ?x ?x éé um zebraum zebra -- Regras identificar os animais ungulados.Regras identificar os animais ungulados. Regras do ZOOKEEPER - Z13-Z14Regras do ZOOKEEPER - Z13-Z14 Z13Z13 IfIf ?x ?x éé um pum páássarossaro ?x não voa?x não voa ?x tem pernas compridas?x tem pernas compridas ?x tem pesco?x tem pescoçço longoo longo ?x ?x éé preto e brancopreto e branco ThenThen ?x ?x éé uma avestruzuma avestruz Z14Z14 IfIf ?x ?x éé um pum páássarossaro ?x não voa?x não voa ?x nada?x nada ?x ?x éé preto e brancopreto e branco ThenThen ?x ?x éé um pingum pingüüimim Regras do ZOOKEEPER - Z15Regras do ZOOKEEPER - Z15 Z15Z15 IfIf ?x ?x éé um pum páássarossaro ?x ?x éé bom voadorbom voador ThenThen ?x ?x éé um albatrozum albatroz -- Regras identificar os pRegras identificar os páássaros.ssaros. Encadeamento para frente no ZOOKEEPEREncadeamento para frente no ZOOKEEPER nn Para identificar um animal com ZOOKEEPER:Para identificar um animal com ZOOKEEPER: AtAtéé as regras não produzirem novas assertivas ou o animal as regras não produzirem novas assertivas ou o animal ser identificado,ser identificado, Para cada regraPara cada regra Tente fundamentar cada um dos antecedentes da regra Tente fundamentar cada um dos antecedentes da regra comparandocomparando--os com os fatos.os com os fatos. Se todos os antecedentes de regras estão Se todos os antecedentes de regras estão fundamenfundamen-- tadostados, declare o conseq, declare o conseqüüente a menos que este jente a menos que este jáá exista.exista. Repita para todas as alternativas que devem ser Repita para todas as alternativas que devem ser testes-- tadastadas.. Memória de trabalho para StretchMemória de trabalho para Stretch nn StretchStretch tem cabelo;tem cabelo; nn StretchStretch rumina;rumina; nn StretchStretch tem pernas longas;tem pernas longas; nn StretchStretch tem cor amarela tostada;tem cor amarela tostada; nn StretchStretch tem pescotem pescoçço comprido;o comprido; nn StretchStretch tem manchas negras.tem manchas negras. Exemplo: encadeamento para frenteExemplo: encadeamento para frente nn Verificar que tipo de animal Verificar que tipo de animal éé StretchStretch.. nn SoluSoluçção:ão: -- StretchStretch tem cabelo logo tem cabelo logo éé um mamum mamíífero (dispara Z1);fero (dispara Z1); -- StretchStretch rumina e rumina e éé um mamum mamíífero logo fero logo éé um ungulado um ungulado (dispara Z8);(dispara Z8); -- StretchStretch éé um ungulado, tem pernas longas, tem cor um ungulado, tem pernas longas, tem cor amarela tostada, tem pescoamarela tostada, tem pescoçço comprido e tem manchas o comprido e tem manchas negras logo negras logo éé uma girafa (dispara Z11).uma girafa (dispara Z11). Exemplo: encadeamento para frenteExemplo: encadeamento para frente nn O fluxo de informaO fluxo de informaçção se dão se dáá atravatravéés de uma ss de uma séérie de regras rie de regras antecedenteantecedente--conseqconseqüüente, a partir das assertivas para as ente, a partir das assertivas para as conclusões.conclusões. Z1 Z8 Z11 Tem pernas longas Tem pescoço longo Tem cor amarelo tostada Tem manchas escuras É uma girafa É um ungulado É um mamífero Tem cabelo Rumina Encadeamento para trás no ZOOKEEPEREncadeamento para trás no ZOOKEEPER nn Para identificar um animal com ZOOKEEPER:Para identificar um animal com ZOOKEEPER: AtAtéé todas as hiptodas as hipóótese terem sido testadas e nenhuma ter tese terem sido testadas e nenhuma ter sido totalmente fundamentada ou atsido totalmente fundamentada ou atéé o animal ter sido o animal ter sido identificado, identificado, Para cada hipPara cada hipóótesetese Para cada regra na qual o conseqPara cada regra na qual o conseqüüentese casa com a ente se casa com a hiphipóótese do momento,tese do momento, Tente fundamentar cada um dos antecedentes de Tente fundamentar cada um dos antecedentes de regra comparandoregra comparando--o com as assertivas na memo com as assertivas na memóória ria de trabalho ou encadeando para trde trabalho ou encadeando para tráás atravs atravéés de outra s de outra regra, criando assim uma nova hipregra, criando assim uma nova hipóótese.tese. Se todos os antecedentes das regras estiverem fundaSe todos os antecedentes das regras estiverem funda-- mentadosmentados conclua que a hipconclua que a hipóótese tese éé verdadeira.verdadeira. Memória de trabalho para SwiftyMemória de trabalho para Swifty nn SwiftySwifty tem cabelo;tem cabelo; nn SwiftySwifty tem olhos pontiagudos;tem olhos pontiagudos; nn SwiftySwifty tem garras;tem garras; nn SwiftySwifty tem dentes pontudos;tem dentes pontudos; nn SwiftySwifty tem cor amarelo tostada;tem cor amarelo tostada; nn SwiftySwifty tem manchas negras.tem manchas negras. Exemplo: encadeamento para trásExemplo: encadeamento para trás nn Verificar se Verificar se SwiftySwifty éé um leopardo.um leopardo. nn SoluSoluçção:ão: -- HipHipóótese: tese: SwiftySwifty éé um leopardo logo considera Z9;um leopardo logo considera Z9; -- HipHipóótese: tese: SwiftySwifty éé carncarníívoro logo considera voro logo considera Z5Z5 ou Z6;ou Z6; -- HipHipóótese: tese: SwiftySwifty éé mammamíífero logo considera fero logo considera Z1Z1 ou Z2;ou Z2; -- Z1 confirmado mas não se sabe se Z1 confirmado mas não se sabe se SwiftySwifty come carne come carne logo desconsidera Z5; logo desconsidera Z5; -- Considera Z6 na qual suas quatro propriedades são Considera Z6 na qual suas quatro propriedades são confirmadas por comparaconfirmadas por comparaçção com a memão com a memóória de trabalho; ria de trabalho; -- Considera Z9 com duas outras propriedades confirmadas Considera Z9 com duas outras propriedades confirmadas por comparapor comparaçção com a memão com a memóória de trabalho logo ria de trabalho logo SwiftySwifty éé um leopardo.um leopardo. Exemplo: encadeamento para frenteExemplo: encadeamento para frente nn O fluxo de informaO fluxo de informaçção se dão se dáá formando hipformando hipóóteses e teses e procurando atravprocurando atravéés das regras antecedentes das regras antecedente--conseqconseqüüente se ente se a hipa hipóótese tese éé verdadeira.verdadeira. Tem olhos pontiagudos Tem dentes pontudos Tem cor amarelo tostada Tem manchas escuras Z9 É um leopardo Z5 É um carnívoro Z1 É um mamífero Tem cabelo Tem garras Z6 É um carnívoro Come carne ?? Adequação do encadeamento ao problemaAdequação do encadeamento ao problema nn Considerando como as regras estão relacionadas com os Considerando como as regras estão relacionadas com os fatos:fatos: -- Emprego de encadeamento para trEmprego de encadeamento para tráás s éé recomendado se os recomendado se os fatos dados e/ou fatos estabelecidos poderem resultar em fatos dados e/ou fatos estabelecidos poderem resultar em um num núúmero alto de conclusões ou se existirem poucas mero alto de conclusões ou se existirem poucas condicondiçções para se chegar a uma conclusão.ões para se chegar a uma conclusão. -- Emprego de encadeamento para frente Emprego de encadeamento para frente éé recomendado se recomendado se existirem vexistirem váários modos de se chegar rios modos de se chegar ààs conclusões e se o s conclusões e se o nnúúmero de conclusões for pequeno.mero de conclusões for pequeno. Um sistema reativo que ensaca mercadoriasUm sistema reativo que ensaca mercadorias nn Este tEste tóópico descreve um sistema reativo baseado em pico descreve um sistema reativo baseado em regras, BAGGER, que produz uma seqregras, BAGGER, que produz uma seqüüência de ência de ensacamento de mercadorias.ensacamento de mercadorias. nn CaracterCaracteríísticos de BAGGER:sticos de BAGGER: -- Este programa Este programa éé estruturado em quatro procedimentos estruturado em quatro procedimentos distintos como descritos a seguir.distintos como descritos a seguir. -- AnAnáálise de compras: Procura mercadorias perdidas e lise de compras: Procura mercadorias perdidas e sugere novas compras.sugere novas compras. -- EnsacaEnsaca--itensitens--grandes: Ensaca os maiores itens, colocando grandes: Ensaca os maiores itens, colocando os vidros em primeiro lugar.os vidros em primeiro lugar. -- EnsacaEnsaca--itensitens--mméédios: Ensaca os itens mdios: Ensaca os itens méédios, colocando dios, colocando congelados em sacos para freezers.congelados em sacos para freezers. -- EnsacaEnsaca--itensitens--pequenos: Ensaca os menores itens.pequenos: Ensaca os menores itens. Regras do BAGGER - B1-B2Regras do BAGGER - B1-B2 Regras para o passo de anRegras para o passo de anáálise da compra.lise da compra. B1B1 IfIf passo passo éé ananááliselise--dada--compracompra batatas fritas estão para ser ensacadasbatatas fritas estão para ser ensacadas não existe não existe pepsipepsi para ser ensacadapara ser ensacada ThenThen pergunte ao cliente se ele gostaria de pergunte ao cliente se ele gostaria de levar uma garrafa de levar uma garrafa de pepsipepsi B2B2 IfIf passo passo éé ananááliselise--dada--compracompra ThenThen passo não passo não éé mais anmais anááliselise--dada--compracompra passo passo éé ensacaensaca--itensitens--grandesgrandes Regras do BAGGER - B1-B2Regras do BAGGER - B1-B2 B2B2 IfIf passo passo éé ananááliselise--dede--compracompra DeleteDelete passo passo éé ananááliselise--dede--compracompra AddAdd passo passo éé ensacaensaca--itensitens--grandesgrandes -- Regras para o passo de anRegras para o passo de anáálise da compra. Elas sugerem lise da compra. Elas sugerem novos itens para a lista de compras e encerram o primeiro novos itens para a lista de compras e encerram o primeiro passo. passo. -- B2 tem uma segunda sintaxe, nela utilizaB2 tem uma segunda sintaxe, nela utiliza--se operase operaçções de ões de subtrasubtraçção e adião e adiçção.ão. Regras do BAGGER - B3-B6Regras do BAGGER - B3-B6 B3B3 IfIf passo passo éé ensacaensaca--itensitens--grandesgrandes um item grande estum item grande estáá para ser ensacadopara ser ensacado o item grande o item grande éé uma garrafauma garrafa o saco atual conto saco atual contéém menos que 6 itensm menos que 6 itens DeleteDelete um item grande estum item grande estáá para ser ensacado para ser ensacado AddAdd o item grande esto item grande estáá no saco atualno saco atual B4B4 IfIf passo passo éé ensacaensaca--itensitens--grandesgrandes um item grande estum item grande estáá para ser ensacadopara ser ensacado o saco atual conto saco atual contéém menos que 6 itensm menos que 6 itens DeleteDelete um item grande estum item grande estáá para ser ensacado para ser ensacado AddAdd o item grande esto item grande estáá no saco atualno saco atual Regras do BAGGER - B3-B6Regras do BAGGER - B3-B6 B5B5 IfIf passo passo éé ensacaensaca--itensitens--grandesgrandes um item grande estum item grande estáá para ser ensacadopara ser ensacado um saco vazio estum saco vazio estáá dispondisponíívelvel DeleteDelete o saco atual o saco atual éé o saco atualo saco atual AddAdd o saco vazio o saco vazio éé o saco atualo saco atual B6B6 IfIf passo passo éé ensacaensaca--itensitens--grandesgrandes DeleteDelete passo passo éé ensacaensaca--itensitens--grandesgrandes AddAdd passo passo éé ensacaensaca--itensitens--mméédiosdios -- Regras para o passo ensacaRegras para o passo ensaca--itensitens--grandes. Elas grandes. Elas empacotam itens grandes, iniciando pelas garrafas, em empacotam itens grandes, iniciando pelas garrafas, em sacos com menos de 6 itens jsacos com menos de 6 itens jáá acondicionados. As regras acondicionados. As regras tambtambéém encerram este passo.m encerram este passo. Regras do BAGGER - B7-B10Regras do BAGGER - B7-B10 B7B7 IfIf passo passo éé ensacaensaca--itensitens--mméédiosdios um item mum item méédio estdio estáá congeladocongeladoo item não esto item não estáá no saco para freezerno saco para freezer DeleteDelete o item não esto item não estáá no saco para freezer no saco para freezer AddAdd o item mo item méédio estdio estáá no saco para freezerno saco para freezer B8B8 IfIf passo passo éé ensacaensaca--itensitens--mméédiosdios um item mum item méédio estdio estáá para ser ensacadopara ser ensacado o saco atual conto saco atual contéém nada ou sm nada ou sóó itens mitens méédiosdios o saco atual não conto saco atual não contéém itens grandesm itens grandes o saco atual tem menos que 12 itens mo saco atual tem menos que 12 itens méédiosdios DeleteDelete um item mum item méédio estdio estáá para ser ensacado para ser ensacado AddAdd o item mo item méédio estdio estáá no saco atualno saco atual Regras do BAGGER - B7-B10Regras do BAGGER - B7-B10 B9B9 IfIf passo passo éé ensacaensaca--itensitens--mméédiosdios um item mum item méédio estdio estáá para ser ensacadopara ser ensacado um saco vazio estum saco vazio estáá dispondisponíívelvel DeleteDelete o saco atual o saco atual éé o saco atualo saco atual AddAdd o saco vazio o saco vazio éé o saco atualo saco atual B10B10 IfIf passo passo éé ensacaensaca--itensitens--mméédiosdios DeleteDelete passo passo éé ensacaensaca--itensitens--mméédiosdios AddAdd passo passo éé ensacaensaca--itensitens--pequenospequenos -- Regras para o passo ensacaRegras para o passo ensaca--itensitens--mméédios. Elas dios. Elas acondicionam itens congelados em sacos apropriados, acondicionam itens congelados em sacos apropriados, ensacam itens mensacam itens méédios, trocam saco cheio por outro vazio e dios, trocam saco cheio por outro vazio e mudam de passo. mudam de passo. Regras do BAGGER - B11-B13Regras do BAGGER - B11-B13 B11B11 IfIf passo passo éé ensacaensaca--itensitens--pequenospequenos um item pequeno estum item pequeno estáá para ser ensacadopara ser ensacado o saco atual não conto saco atual não contéém itens grandesm itens grandes o saco atual não conto saco atual não contéém itens mm itens méédiosdios o saco atual tem menos que 18 itens pequenoso saco atual tem menos que 18 itens pequenos DeleteDelete um item pequeno estum item pequeno estáá para ser ensacado para ser ensacado AddAdd o item pequeno esto item pequeno estáá no saco atualno saco atual B12B12 IfIf passo passo éé ensacaensaca--itensitens--pequenospequenos um item pequeno estum item pequeno estáá para ser ensacadopara ser ensacado um saco vazio estum saco vazio estáá dispondisponíívelvel DeleteDelete o saco atual o saco atual éé o saco atualo saco atual AddAdd o saco vazio o saco vazio éé o saco atualo saco atual Regras do BAGGER - B11-B13Regras do BAGGER - B11-B13 B13B13 IfIf passo passo éé ensacaensaca--itensitens--pequenospequenos DeleteDelete passo passo éé ensacaensaca--itensitens--pequenospequenos AddAdd passo passo éé final do processofinal do processo -- Regras para o passo ensacaRegras para o passo ensaca--itensitens--pequenos. Elas ensacam pequenos. Elas ensacam itens pequenos, trocam saco cheio por outro vazio e itens pequenos, trocam saco cheio por outro vazio e encerram processo. encerram processo. Memória de trabalho do sistema reativoMemória de trabalho do sistema reativo nn Esta Esta éé composta por assertivas que capturam informacomposta por assertivas que capturam informaçções ões sobre os itens que serão ensacados. Os itens estão listados sobre os itens que serão ensacados. Os itens estão listados como abaixo (esta sercomo abaixo (esta seráá a entrada do sistema):a entrada do sistema): itemitem embalagemembalagem tamanhotamanho congelado?congelado? pãopão saco plsaco pláásticostico med.med. nãonão refrescorefresco jarrajarra peq.peq. nãonão granolagranola caixa de papelãocaixa de papelão gragra.. nãonão sorvetesorvete cartão de papelãocartão de papelão med.med. simsim fritasfritas caixa de plcaixa de pláásticostico med.med. nãonão pepsipepsi casco de vidrocasco de vidro gragra.. nãonão Memória de trabalho do sistema reativoMemória de trabalho do sistema reativo nn Formato da memFormato da memóória de trabalho no exemplo:ria de trabalho no exemplo: passo passo éé nomenome--dodo--passopasso nomenome--dodo--sacosaco éé um sacoum saco nomenome--dada--mercadoriamercadoria éé para ser ensacadapara ser ensacada nn ComposiComposiçção inicial da memão inicial da memóória de trabalho no exemplo:ria de trabalho no exemplo: passo passo éé ananááliselise--dede--compracompra saco1saco1 éé um sacoum saco pãopão éé para ser ensacadopara ser ensacado refrescorefresco éé para ser ensacadopara ser ensacado granolagranola éé para ser ensacadopara ser ensacado sorvetesorvete éé para ser ensacadopara ser ensacado fritasfritas éé para ser ensacadopara ser ensacado Memória de trabalho do sistema reativoMemória de trabalho do sistema reativo nn ComposiComposiçção apão apóós o passo ans o passo anááliselise--dede--compra:compra: passo passo éé ensacaensaca--itensitens--grandesgrandes saco1saco1 éé um sacoum saco pãopão éé para ser ensacadopara ser ensacado refrescorefresco éé para ser ensacadopara ser ensacado granolagranola éé para ser ensacadopara ser ensacado sorvetesorvete éé para ser ensacadopara ser ensacado fritasfritas éé para ser ensacadopara ser ensacado -- SegueSegue--se o passo que deve ensacar os itens grandes.se o passo que deve ensacar os itens grandes. Memória de trabalho do sistema reativoMemória de trabalho do sistema reativo nn ComposiComposiçção apão apóós o passo ensacas o passo ensaca--itensitens--grandes:grandes: passo passo éé ensacaensaca--itensitens--mméédiosdios saco1 saco1 contcontéém m pepsipepsi saco1 saco1 contcontéém m granolagranola pãopão éé para ser ensacadopara ser ensacado refrescorefresco éé para ser ensacadopara ser ensacado granolagranola éé para ser ensacadopara ser ensacado sorvetesorvete éé para ser ensacadopara ser ensacado fritasfritas éé para ser ensacadopara ser ensacado -- SegueSegue--se o passo que deve ensacar os itens mse o passo que deve ensacar os itens méédios.dios. Memória de trabalho do sistema reativoMemória de trabalho do sistema reativo nn ComposiComposiçção apão apóós o passo ensacas o passo ensaca--itensitens--mméédios:dios: passo passo éé ensacaensaca--itensitens--mméédiosdios saco1 saco1 contcontéém m pepsipepsi saco1 saco1 contcontéém m granolagranola saco2saco2 contcontéém pãom pão saco2saco2 contcontéém sorvetem sorvete saco2saco2 contcontéém fritasm fritas refrescorefresco éé para ser ensacadopara ser ensacado -- SegueSegue--se o passo que deve ensacar os itens pequenos.se o passo que deve ensacar os itens pequenos. Memória de trabalho do sistema reativoMemória de trabalho do sistema reativo nn ComposiComposiçção apão apóós o passo ensacas o passo ensaca--itensitens--mméédios:dios: passo passo éé ensacaensaca--itensitens--mméédiosdios saco1 saco1 contcontéém m pepsipepsi saco1 saco1 contcontéém m granolagranola saco2saco2 contcontéém pãom pão saco2saco2 contcontéém sorvetem sorvete saco2saco2 contcontéém fritasm fritas saco3saco3 contcontéém refrescom refresco -- O processo estO processo estáá encerrado.encerrado.
Compartilhar