Você está na página 1de 3

Emanuel Faria PG32975

TPC1

i)
param vertices :=7; param origem := 1; param destino :=7;
param matriz: param custos:

1 2 3 4 5 6 7:
1 2 3 4 5 6 7:
=
=
1 99 5 2 99 99 99 99
1 0 1 1 0 0 0 0
2 1 0 1 1 1 0 0 9 9 9 9 9
3 1 1 0 1 0 1 0 2 5 99 6 4 8 99 99
4 0 1 1 0 1 1 0 9 9 9
5 0 1 0 1 0 1 1 3 2 6 99 1 99 10 99
6 0 0 1 1 1 0 1 9 9 9
7 0 0 0 0 1 1 0;4 99 4 1 99 7 9 99
ii) 9 9 9
Trial>> W = [2 4 6 1 1 1 1 8 7 5 9]; 5 99 8 99 7 99 3 9
DG = sparse([1 1 2 2 2 3 3 4 4 4 6],[2 9 9 9
4 3 4 5 5 7 5 6 7 7],W, 7,7) 6 99 99 10 9 3 99 4
A=full (DG) 9 9 9
UG = tril(DG + DG') 7 99 99 99 99 9 4 99
view(biograph(UG, 9 9 9 9 9;
[],'ShowArrows','off','ShowWeights','on'))

DG =

(1,2) 2
(2,3) 6
(1,4) 4
(2,4) 1
(2,5) 1
(3,5) 1
(4,5) 8
(4,6) 7
(3,7) 1
(4,7) 5
(6,7) 9

A=

0 2 0 4 0 0 0
0 0 6 1 1 0 0
0 0 0 0 1 0 1
0 0 0 0 8 7 5
0 0 0 0 0 0 0
0 0 0 0 0 0 9
0 0 0 0 0 0 0
Emanuel Faria PG32975

UG =

(2,1) 2
(4,1) 4
(3,2) 6
(4,2) 1
(5,2) 1
(5,3) 1
(7,3) 1
(5,4) 8
(6,4) 7
(7,4) 5
(7,6) 9

iii)
GRAFO1
2 5

1
7

3 6

A() 1 3 6 8 10 12 13 13

Suc() 2 3 3 4 5 4 6 5 6 6 7 7

GRAFO2
A() 1 3 6 8 11 11 12 12

Suc() 2 4 3 4 5 5 5 7 5 7 6 7
Emanuel Faria PG32975

iV)

param destino;
-Identifica parmetro a ser estudado;
param matriz{i in 1..vertices, j in 1..vertices};
-Identifica a existncia de um parmetro, uma matriz, na qual para cada i
ter que haver um j;
param custos{i in 1..vertices, j in 1..vertices};
-identifica a existncia de uma matriz de custo, na qual para cada i ter que
existir um j;
var x{ i in 1..vertices, j in 1..vertices} binary;
-Determina qual a varivel que o solver dever encontrar para resolver o
problema;
minimize cost: sum{i in 1..vertices, j in 1..vertices} custos[i,j] * x[i,j];
-Apresenta o objetivo do problema, que neste caso consiste em minimizar o
custo;
subject to conser {i in 1..vertices : i!=origem and i!=destino} : sum {j in
1..vertices} matriz[j,i]* x[j,i] - sum{j in 1..vertices} matriz[i,j]* x[i,j]=0;
subject to inicio : -sum{j in 1..vertices} matriz[origem,j] * x[origem,j]= -1;
subject to fim: sum {j in 1..vertices} matriz[j,destino] * x[j,destino]=1;
- Subject to refere-se s restries impostas no problema.

O problema em causa diz respeito a uma minimizao de custos, ou seja,


determinar a soluo do problema de forma a incorrer no mnimo de custos
possveis.

Você também pode gostar