Wolfram Language

Planejamento de piso ideal

Considere o problema de colocar retângulos menores dentro de um retângulo maior de perímetro mínimo com restrições no posicionamento relativo, razão de aspecto, espaçamento e área de retângulos menores.

Este exemplo monstra o uso da Wolfram Language para definir uma função que usa NMinimize para resolver problemas de planejamento de piso. A função usa desigualdades de vetor, incluindo uma desigualdade semidefinida.

Descreva o retângulo maior por Rectangle[{0, 0}, {H, W}] e cada um dos menores por ri=Rectangle[{xi, yi}, {xi+wi, yi+hi}], i=1 n .

O posicionamento relativo pode ser descrito por dois gráficos direcionados, um para posicionamento horizontal e outro para posicionamento vertical. Se tiver uma borda ij, então ri deve estar à esquerda de (ou abaixo) rj.

Para simplificar, assuma que todos os retângulos devem ter uma proporção entre e para e que o espaçamento entre retângulos é .

Dados estes inputs e uma lista das áreas dos retângulos menores, você pode definir uma função planFloor que encontra o perímetro mínimo do retângulo maior.

mostre o input completo da Wolfram Language

Configure gráficos para o posicionamento relativo de 10 retângulos menores.

Determine que as áreas de todos os retângulos menores sejam 100, exceto uma que tenha área 400.

Isso otimiza o planejamento do piso.

Mostre o plano ideal.

Isso mostra que a restrição de área está satisfeita com a igualdade.

Compare os layouts quando as áreas são feitas aleatoriamente.

Exemplos Relacionados

de en es fr ja ko zh