How to convert python code to matlab

import random
from operator import itemgetter
POWER_PER_MOVE_UNIT = 0.2
LOCALIZATION_COST = 0.3
def generate_nodes(nr_of_nodes):
return [{'nr': i, 'power': random.uniform(0, 25)} for i in range(nr_of_nodes)]
def generate_distances(nodes):
return [random.randint(1, 10) for _ in range(0, len(nodes) - 1)]
nodes = generate_nodes(10)
Nd = generate_distances(nodes)
print("NODES", nodes)
print("Distances", Nd)
def get_power(previous_power):
return previous_power - random.uniform(0.1, 1)
def explore(mcr, nodes):
vNodes = []
v = []
C = 0
power = mcr
for i, node in enumerate(nodes):
power = get_power(power)
hp = mcr - power
v, C, l = charge(vNodes, power - hp)
power = power - C - hp
if can_visit_more_nodes(power, i):
vNodes.append(node)
else:
break
print("V NODES", vNodes)
print("POWER", power)
def charge(vNodes, power):
sNodes = sorted(vNodes, key=lambda k: k['power'])
v = []
v1 = []
C = 0
l = 0
for i, node in enumerate(sNodes[:-2]):
sPower = node['power']
tPower = sNodes[i+1]['power']
v1.append(node)
needed_power = LOCALIZATION_COST + (tPower - sPower) * (1 + len(v1))
if power > needed_power:
v = v1
C = C + needed_power
l = tPower
else:
return v, C, l
return v, C, l
def can_visit_more_nodes(power, i):
if power >= 2 * Nd[i] * POWER_PER_MOVE_UNIT:
return True
else:
return False
explore(500, nodes)

Respuestas (1)

User18
User18 el 17 de En. de 2018

0 votos

Can somebody help me get the exact code of this in matlab because i dont need to just call it from poython?

2 comentarios

Stephen23
Stephen23 el 17 de En. de 2018
Editada: Stephen23 el 17 de En. de 2018
@User18: you have accepted an answer, which tells everyone that your question has been resolved.
Or did it not resolve your question?
User18
User18 el 17 de En. de 2018
Yes you're right,i thought it worked for me. But anyways i might need some help since im not so good at matlab.I have a deadline for this in school.

Iniciar sesión para comentar.

Categorías

Etiquetas

Preguntada:

el 17 de En. de 2018

Editada:

el 17 de En. de 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by