i

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN NGỌC HIỆP

XÂY DỰNG HỆ HỖ TRỢ XÁC ĐỊNH THỰC ĐƠN KHẨU PHẨN DINH DƯỠNG PHÒNG BỆNH BÉO PHÌ CHO TRẺ DƯỚI 6 TUỔI

Chuyên ngành: Khoa học máy tính

Mã số: 848 01 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học: TS. NGUYỄN HẢI MINH

THÁI NGUYÊN, 2018

ii

LỜI CẢM ƠN

Để có thể hoàn thành đề tài luận văn bên cạnh sự nỗ lực cố gắng của bản

thân, tác giả đã nhận được sự động viên ủng hộ của gia đình, bạn bè và sự

hướng dẫn nhiệt tình của thầy cô trong suốt thời gian học tập, nghiên cứu. Tôi

xin cảm ơn toàn thể quý thầy cô trong và ngoài trường Đại học Công nghệ

Thông tin và Truyền thông - Đại học Thái Nguyên. Các thầy, cô đã tận tình

truyền đạt những kiến thức quý báu cũng như tạo mọi điều kiện thuận lợi nhất

cho tác giả trong suốt quá trình học tập nghiên cứu và cho đến khi thực hiện

luận văn.

Tôi xin trân trọng cảm ơn Ban giám hiệu trường Cao đẳng Sư phạm Nam

Định đã tạo mọi điều kiện thuận lợi để tôi được theo học lớp Cao học này. Xin

trân trọng cảm ơn trường Mầm non Sao Mai - Số 1 Huỳnh Thúc Kháng, phường

Trần Hưng Đạo, thành phố Nam Định đã không ngừng hỗ trợ và cung cấp số

liệu cho tác giả trong thời gian nghiên cứu luận văn.

Em xin chân thành bày tỏ lòng biết ơn sâu sắc đến thầy TS. Nguyễn Hải

Minh - người hướng dẫn khoa học đã tận tình giúp đỡ tác giả trong quá trình

thực hiện luận văn.

Cuối cùng, xin chân thành cảm ơn đến gia đình, các anh chị và các bạn

đồng nghiệp đã hỗ trợ cho tôi rất nhiều trong suốt quá trình học tập, nghiên cứu

và thực hiện luận văn.

Thái Nguyên, ngày … tháng … năm 2018 Tác giả luận văn Nguyễn Ngọc Hiệp

iii

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình do tôi nghiên cứu thông qua tài liệu

tham khảo và phân tích. Kết quả nghiên cứu, các số liệu nêu trong luận văn là

trung thực và chưa từng được ai công bố một cách trọn vẹn trong bất kì công

trình nào khác.

iv

MỤC LỤC

LỜI CẢM ƠN .................................................................................................... i

LỜI CAM ĐOAN ............................................................................................ iii

MỤC LỤC ........................................................................................................ iv

BẢNG CÁC CHỮ VIẾT TẮT TRONG LUẬN VĂN .................................. viii

DANH SÁCH CÁC BẢNG ............................................................................. ix

DANH SÁCH CÁC HÌNH VẼ ........................................................................ ix

CHƯƠNG 1: TỔNG QUAN VỀ CÁC CÁCH TIẾP CẬN GIẢI BÀI TOÁN 1

1.1. Đặt vấn đề .............................................................................................. 1

1.2. Các hướng nghiên cứu giải quyết bài toán ............................................. 2

1.2.1. Sử dụng kĩ thuật Trí tuệ nhân tạo (AI) ............................................ 2

1.2.1.1. Các phương pháp tìm kiếm cổ điển ......................................... 2

1.2.1.2. Giải thuật di truyền (GA) ......................................................... 3

1.2.1.3. Mạng Neural............................................................................. 7

1.2.2. Sử dụng kĩ thuật Tập mờ (FL) ........................................................ 9

1.2.3. Sử dụng kết hợp giữa AI và FL..................................................... 11

1.2.4. Sử dụng hệ hỗ trợ quyết định ........................................................ 12

1.2.4.1. Khái niệm hệ hỗ trợ quyết định (DSS) .................................. 12

1.2.4.2. Các thành phần của hệ hỗ trợ quyết định ............................... 13

1.2.4.3. Mô hình ra quyết định ............................................................ 13

1.2.4.4. Đặc điểm của hệ hỗ trợ quyết định (DSS) ............................. 13

1.2.4.5. Phân loại hệ hỗ trợ quyết định ............................................... 15

CHƯƠNG 2: CƠ SỞ LÍ THUYẾT XÁC ĐỊNH KHẨU PHẦN ĂN ............. 18

2.1. Năng lượng ........................................................................................... 18

2.1.1. Nguồn cung cấp năng lượng cho cơ thể ........................................ 18

2.1.2. Năng lượng cần thiết cho chuyển hóa cơ bản ............................... 19

2.1.3. Nhu cầu năng lượng hàng ngày .................................................... 21

v

2.1.4. Cách tính nhu cầu năng lượng cho một ngày ................................ 22

2.2. Nhu cầu các chất dinh dưỡng cần thiết đối với cơ thể ......................... 24

2.2.1. Protein ........................................................................................... 24

2.2.2. Lipit ............................................................................................... 25

2.2.3. Gluxit ............................................................................................. 26

2.2.4. Các chất khoáng ............................................................................ 27

2.2.4.1. Canxi (Ca) .............................................................................. 27

2.2.4.2. Photpho (P)............................................................................. 28

2.2.4.3. Kali (K) .................................................................................. 29

2.2.4.4. Natri (Na) ............................................................................... 29

2.2.4.5. Sắt (Fe) ................................................................................... 30

2.2.4.6. Iot (I) ...................................................................................... 31

2.2.4.7. Các yếu tố vi lượng khác ....................................................... 32

2.2.5. Vitamin .......................................................................................... 33

2.2.5.1. Vitamin A (Retinol) ............................................................... 33

2.2.5.2. Vitamin D ............................................................................... 34

2.2.5.3. Vitamin B1 (Thiamin) ............................................................ 35

2.2.5.4. Vitamin B2 (Riboflavin) ......................................................... 36

2.2.5.5. Vitamin PP (Niaxin) ............................................................... 37

2.2.5.6. Vitamin C (axit ascorbic) ....................................................... 37

2.3. Xây dựng khẩu phần ăn ........................................................................ 38

2.3.1. Khẩu phần là gì? ............................................................................ 38

2.3.2. Chế độ ăn là gì? ............................................................................. 38

2.3.3. Thực đơn là gì? ............................................................................. 38

2.3.4. Khẩu phần ăn phải đảm bảo cân đối và hợp lí .............................. 38

2.3.5. Các bước khi tiến hành xây dựng khẩu phần ăn ........................... 40

2.3.6. Nguyên tắc xây dựng thực đơn ..................................................... 41

vi

2.4. Tổng quan về bệnh béo phì .................................................................. 41

2.4.1. Khái niệm bệnh béo phì ................................................................ 41

2.4.2. Phương pháp xác định béo phì ...................................................... 41

2.4.2.1. Dựa vào chỉ số BMI ............................................................... 41

2.4.2.2. Dựa vào Chu vi vòng eo ........................................................ 42

2.4.3. Thực trạng béo phì ........................................................................ 42

2.4.3.1. Thực trạng béo phì trên thế giới ............................................. 42

2.4.3.2. Thực trạng béo phì ở Việt Nam ............................................. 43

2.4.4. Những yếu tố, nguy cơ của béo phì ở trẻ em ................................ 44

2.4.4.1. Cơ chế bệnh sinh của béo phì ................................................ 44

2.4.4.2. Yếu tố di truyền ...................................................................... 44

2.4.4.3. Khẩu phần và thói quen ăn uống của trẻ béo phì ................... 45

2.4.4.4. Hoạt động thể chất của trẻ béo phì ......................................... 46

2.4.4.5. Một số nguyên nhân khác ...................................................... 46

2.4.5. Hậu quả của béo phì ...................................................................... 47

2.4.5.1. Ảnh hưởng đến sức khỏe ....................................................... 47

2.4.5.2. Tăng nguy cơ mắc bệnh tử vong ............................................ 48

2.4.5.3. Hậu quả kinh tế và xã hội của béo phì ................................... 48

2.4.6. Giải pháp phòng chống béo phì ở trẻ em ...................................... 49

2.4.6.1. Về chế độ ăn của trẻ ............................................................... 49

2.4.6.2. Về chế độ vận động của trẻ .................................................... 50

CHƯƠNG 3: CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ ......... 51

3.1. Phân tích, thiết kế ................................................................................. 51

3.2. Mô hình toán học của bài toán ............................................................. 51

3.3. Xác định BMI [4] ................................................................................. 55

3.4. Xác định năng lượng đưa vào/ngày ..................................................... 56

3.5. Xây dựng cơ sở dữ liệu thực phẩm dinh dưỡng ................................... 56

vii

3.6. Kết quả cài đặt ...................................................................................... 58

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ...................................................... 62

TÀI LIỆU THAM KHẢO ............................................................................... 63

PHỤ LỤC ........................................................................................................ 65

viii

BẢNG CÁC CHỮ VIẾT TẮT TRONG LUẬN VĂN

AI Artificial Intelligence Trí tuệ nhân tạo

BMI Body Mass Index Chỉ số khối cơ thể

DSS Decision Support System Hệ hỗ trợ quyết định

FL Fuzzy Logic Logic mờ

g Gam = Gram Đơn vị đo

G Gluxit Chất bột

GA Genetic Algorithms Giải thuật di truyền

ISDN Integrated Services Digital Network Mạng số tích hợp đa dịch vụ

kg Kilogam Đơn vị đo

L Lipit Chất béo

mg Milligram Đơn vị đo

mcg Microgram Đơn vị đo

P Protein Chất đạm

VPN Virtual Private Network Mạng riêng ảo

WHO World Health Organization Tổ chức Y tế thế giới

ix

DANH SÁCH CÁC BẢNG

Bảng 1.1: So sánh các tiêu chí cơ bản của mạng nơron và logic mờ.............. 12

Bảng 2.1: Giá trị sinh nhiệt của các chất......................................................... 19

Bảng 2.2: Nhu cầu năng lượng (tính theo kcal/ngày) ..................................... 22

Bảng 2.3: Công thức tính chuyển hóa năng lượng cơ bản dựa theo cân nặng 23

Bảng 2.4: Hệ số nhu cầu năng lượng theo tính chất lao động ........................ 23

Bảng 2.5: Nhu cầu Canxi ................................................................................ 28

Bảng 2.6: Nhu cầu Photpho ............................................................................ 29

Bảng 2.7: Nhu cầu Sắt ..................................................................................... 31

Bảng 2.8: Nhu cầu Iot ..................................................................................... 32

Bảng 2.9: Nhu cầu Vitamin A ......................................................................... 34

Bảng 2.10: Thực phẩm thông dụng giàu Vitamin A (Hàm lượng trong 100g

thực phẩm ăn được) ......................................................................................... 34

Bảng 2.11: Nhu cầu Vitamin D ....................................................................... 35

Bảng 2.12: Nhu cầu Vitamin B1 ..................................................................... 36

Bảng 2.13: Nhu cầu Vitamin B2 ..................................................................... 36

Bảng 2.14: Nhu cầu Vitamin PP ..................................................................... 37

Bảng 2.15: Nhu cầu Vitamin C ....................................................................... 38

Bảng 2.16: Nhu cầu khuyến nghị năng lượng lứa tuổi nhà trẻ ....................... 39

Bảng 2.17: Bảng chỉ số BMI chuẩn theo WHO .............................................. 42

Bảng 2.18: Hậu quả của béo phì ..................................................................... 48

x

DANH SÁCH CÁC HÌNH VẼ

Hình 1.1: Cấu trúc tổng quát của mô hình ...................................................... 13

Hình 2.1: Mô hình Bom calorie ...................................................................... 18

Hình 2.2: Sơ đồ sử dụng Protein từ thức ăn của cơ thể .................................. 24

Hình 3.1: Chỉ số BMI cho trẻ em .................................................................... 55

Hình 3.2: Giao diện chính của chương trình ................................................... 59

Hình 3.3: Giao diện của Module Thực phẩm.................................................. 59

Hình 3.4: Giao diện của Module Chỉ số BMI ................................................. 60

Hình 3.5: Giao diện của Module Chuyển hóa cơ bản ..................................... 60

Hình 3.6: Giao diện của Module Thực đơn .................................................... 61

1

CHƯƠNG 1

TỔNG QUAN VỀ CÁC CÁCH TIẾP CẬN GIẢI BÀI TOÁN

1.1. Đặt vấn đề

Giáo dục mầm non góp phần cùng với sự phát triển của giáo dục Việt

Nam đào tạo ra những con người có năng lực, phát triển toàn diện không ngừng

cả về phẩm chất trí tuệ, phẩm chất đạo đức mà còn có đầy đủ sức khỏe sẵn sàng

phục vụ đắc lực cho sự nghiệp công nghiệp hóa, hiện đại hóa đất nước và phát

triển kinh tế xã hội trong tương lai.

Mục tiêu giáo dục mầm non trong chiến lược phát triển giáo dục nhấn

mạnh đến chất lượng giáo dục toàn diện, trong đó phát triển thể chất được đặt

ra trong mối quan hệ tổng thể với các mặt phát triển khác.

Ở nước ta, trong những năm gần đây, nhờ sự tăng trưởng của nền kinh

tế, sự quan tâm của các tổ chức xã hội nên chất lượng chăm sóc, nuôi dạy trẻ

mà chăm sóc dinh dưỡng đã cải thiện đáng kể. Năm 2016, Thủ tướng Chính

phủ đã kí quyết định phê duyệt “Chương trình sữa học đường cải thiện tình

trạng suy dinh dưỡng góp phần nâng cao tầm vóc trẻ em mẫu giáo và tiểu học

đến năm 2020”, qua đó tình trạng suy dinh dưỡng ở trẻ em giảm đáng kể.

Tuy nhiên, so với các nước trong khu vực, tỉ lệ trẻ em suy dinh dưỡng ở

Việt Nam vẫn còn cao, nhất là ở những tỉnh vùng sâu, vùng xa, vùng đặc biệt

khó khăn. Cùng với đó tại các khu đô thị lớn thì một số bệnh do chế độ dinh

dưỡng không khoa học lại xuất hiện và có xu hướng ngày càng tăng nhanh như

thừa cân, béo phì, cao huyết áp và một số bệnh tim mạch khác. Kết quả điều tra

mới nhất (2014 - 2015) về tình trạng trẻ thừa cân béo phì được TS. Bùi Thị

Nhung - Trưởng khoa Dinh dưỡng học đường và ngành nghề, Viện Dinh dưỡng

Quốc gia, công bố tại hội thảo phòng chống béo phì, thừa cân cho trẻ em, ngày

18/10/2017. Theo đó tình trạng béo phì trẻ em từ tuổi tiền học đường và học

đường đến tuổi trưởng thành đang gia tăng tại Việt Nam, đặc biệt ở các thành

2

phố lớn. Từ năm 1980 - 2013, tỉ lệ thừa cân, béo phì tăng đến 47% ở trẻ em.

Năm 1996, tỉ lệ trẻ em thừa cân, béo phì tại Hà Nội và Thành phố Hồ Chí Minh

là 12%. 13 năm sau (năm 2009) tỉ lệ này là 43%. Kết quả điều tra năm 2014 -

2015, tỉ lệ béo phì ở Thành phố Hồ Chí Minh trên 50%, còn khu vực nội thành

Hà Nội khoảng 41% [6].

Những trẻ bị béo phì thường mất cân bằng trong cuộc sống. Trẻ sẽ lười

vận động hơn, luôn có cảm giác nặng nề, khó khăn trong mọi hoạt động của

cuộc sống. Từ đó ảnh hưởng đến việc tiếp thu kiến thức dẫn đến kết quả học

tập giảm sút. Các nhà khoa học đã chứng minh rằng béo phì chính là nguyên

nhân quan trọng dẫn đến những bệnh nguy hiểm như: đái tháo đường, sỏi mật,

… Đặc biệt, những trẻ bị béo phì còn có nguy cơ rất cao mắc bệnh ung thư khi

lớn lên.

Tình trạng suy dinh dưỡng, thừa cân, béo phì và một số bệnh về dinh

dưỡng có liên quan mật thiết đến chế độ dinh dưỡng cho trẻ em ở các trường

mầm non và gia đình. Việc nâng cao sức khỏe, trong đó yếu tố nền tảng là cải

thiện dinh dưỡng cho trẻ em là rất cần thiết và cấp bách. Để đóng góp giải pháp

khắc phục về thực trạng chế độ dinh dưỡng hợp lí phòng bệnh béo phì cho trẻ

em hiện nay, tác giả tiến hành nghiên cứu đề tài: “Xây dựng hệ hỗ trợ xác định

thực đơn khẩu phần dinh dưỡng phòng bệnh béo phì cho trẻ dưới 6 tuổi”.

1.2. Các hướng nghiên cứu giải quyết bài toán

1.2.1. Sử dụng kĩ thuật Trí tuệ nhân tạo (AI)

1.2.1.1. Các phương pháp tìm kiếm cổ điển

Với phương pháp này, chúng ta chọn một khẩu phần ăn bất kì, sau đó

tiến hành so sánh khẩu phần ăn này với các khẩu phần ăn khác. Nếu khẩu phần

nào đó tốt hơn (tức là đáp ứng được các điều kiện về hàm lượng calo, tỉ lệ cân

bằng các chất dinh dưỡng phòng bệnh béo phì, …) đồng thời các điều kiện biên

có chi phí nhỏ hơn thì chúng ta sẽ thay thế khẩu phần ăn đã lựa chọn ban đầu

3

bằng khẩu phần ăn mới và tiếp tục tiến hành quá trình so sánh với các khẩu

phần ăn còn lại. Chu trình này sẽ lặp lại đến khi chúng ta duyệt toàn bộ không

gian tìm kiếm (không gian khẩu phần ăn).

Ưu điểm:

Ý tưởng thực hiện của phương pháp này đơn giản, dễ hiểu. Nếu xác định

tốt các tiêu chí so sánh, phương pháp này sẽ cho kết quả tối ưu nhất có trong

không gian tìm kiếm.

Hạn chế:

Việc tìm kiếm trên không gian khẩu phần ăn sẽ gây ra hiện tượng bùng

nổ tổ hợp. Ví dụ: Nếu chúng ta chỉ dùng 3 món trong một khẩu phần ăn thì

không gian mẫu sẽ bao gồm n3 mẫu. (với n là số món trong cùng một loại: canh,

mặn, tráng miệng). Ví dụ mỗi loại có 5 món ăn, khi đó không gian mẫu sẽ là

; nếu mỗi loại tăng lên một món ăn, không gian mẫu sẽ trở thành

. Rõ ràng khi n lớn thì việc tìm kiếm sẽ rất tốn kém.

Mỗi khẩu phần ăn lại thỏa mãn nhiều điều kiện dinh dưỡng khác nhau,

về hàm lượng calo, về tỉ lệ cân bằng giữa các chất đảm bảo phòng chống bệnh

béo phì. Do đó, việc xác định khẩu phần thỏa mãn tất cả các điều kiện đó không

phải dễ dàng. Việc so sánh càng trở nên phức tạp và nhiều khi không thể thực

hiện được nếu các điều kiện này đan xen nhau.

Việc có nhiều điều kiện cũng làm tăng chi phí thực hiện so sánh và tăng

thời gian tìm kiếm.

1.2.1.2. Giải thuật di truyền (GA)

Ý tưởng chính của phương pháp này dựa trên lý thuyết về sự tiến hóa

trong tự nhiên của các loài vật, qua nhiều thế hệ sinh vật phát triển dựa trên

nguyên lí của sự chọn lọc tự nhiên, loài nào thích nghi sẽ tồn tại. Như ta thấy

trong tự nhiên các loài vật sẽ cạnh tranh nhau về thức ăn, nơi trú ẩn, … các cá

thể cùng loài còn cạnh tranh nhau để thu hút bạn tình trong mùa sinh sản. Trong

4

quá trình sinh sản luôn xuất hiện hai hiện tượng di truyền và biến dị. Hiện tượng

di truyền cho phép thế hệ sau tốt giống thế hệ trước. Còn hiện tượng biến dị tạo

ra các cá thể có khả năng mới. Nếu khả năng mới đó là tốt hơn trước thì sẽ được

truyền lại cho thế hệ sau. Nếu khả năng mới là xấu hơn thì khả năng truyền lại

cho thế hệ sau là ít hơn. Dần dần trong quá trình chọn lọc tự nhiên các đặc tính

xấu hơn đó sẽ được loại bỏ và thay thế bằng các đặc tính tốt hơn.

Áp dụng giải thuật di truyền vào giải quyết bài toán. Coi các khẩu phần

ăn là các nhiễm sắc thể, các nhiễm sắc thể này sẽ được lai ghép với nhau để tạo

ra nhiễm sắc thể mới, trong quá trình lai ghép một số gen bị đột biến cũng tạo

thành các nhiễm sắc thể mới. Quá trình chọn lọc tự nhiên sẽ loại bỏ các nhiễm

sắc thể không có khả năng thích nghi ra khỏi quần thể chỉ giữ lại những nhiễm

sắc thể có khả năng thích nghi tốt.

Biểu diễn khẩu phần ăn dưới dạng nhiễm sắc thể

Đây là một trong những công việc quan trọng trong thiết kế giải thuật di

truyền, quyết định việc áp dụng các toán tử tiến hóa. Một trong những phương

pháp biểu diễn truyền thống của GA là biểu diễn nhị phân. Với phép biểu diễn

này giải pháp cho bài toán được biểu diễn như là một vector bit. Mỗi nhiễm sắc

thể là một khẩu phần ăn bao gồm nhiều gen, trong đó một gen đại diện cho một

tham số thành phần của bài toán.

Khởi tạo quần thể

Để khởi tạo quần thể, chỉ cần đơn giản tạo pop - size (kích cỡ quần thể)

nhiễm sắc thể (khẩu phần ăn) ngẫu nhiên theo từng bit. Trong mỗi thế hệ, ta

lượng giá từng nhiễm sắc thể (tính giá trị hàm f trên các chuỗi biến nhị phân đã

được giải mã), chọn quần thể mới thỏa mãn phân bố xác suất dựa trên độ thích

nghi và thực hiện các phép đột biến và lai ghép để tạo ra các cá thể thế hệ mới.

Sau một số thế hệ, khi không còn cải thiện thêm được gì nữa, nhiễm sắc thể

(khẩu phần ăn) tốt nhất sẽ được xem như lời giải của bài toán.

5

Hàm mục tiêu

Sau khi khởi tạo quần thể hoặc ở thời điểm các thế hệ mới được tạo thành,

chúng ta phải sử dụng hàm mục tiêu để đánh giá mức độ thích nghi của mỗi

nhiễm sắc thể nhằm có cơ sở cho việc lựa chọn bố mẹ cho các phép lai ghép và

đột biến.

Các phương pháp xác định độ thích nghi:

- Xác định theo tỉ lệ thích nghi (Fitness scaling);

- Xác định theo phương pháp cửa sổ thích nghi (Fitness

windowing);

- Xác định theo thứ hạng thích nghi (Fitness ranking).

Toán tử lai ghép

Là phép toán thực hiện lai ghép hai nhiễm sắc thể (hay hai khẩu phần ăn)

với nhau nhằm sinh ra nhiễm sắc thể (hay khẩu phần ăn) con từ các nhiễm sắc

thể cha mẹ ban đầu, thừa hưởng các đặc tính tốt từ cha mẹ. Với một xác suất

lai k cho trước, chúng ta tiến hành chọn ngẫu nhiên các cặp nhiễm sắc thể và

thực hiện lai ghép.

Một số phương pháp lai ghép:

- Lai ghép một điểm;

- Lai ghép nhiều điểm;

- Lai ghép mặt nạ.

Toán tử đột biến

Tương tự như lai ghép, kết quả của đột biến thường sinh ra các nhiễm

sắc thể mới khác biệt so với nhiễm sắc thể cha mẹ. Phép đột biến được điều

khiển bởi xác suất đột biến.

Toán tử chọn lọc

Phép chọn lọc là quá trình loại bỏ nhiễm sắc thể (khẩu phần ăn) kém

thích nghi ra khỏi quần thể. Ở mỗi thế hệ, dựa trên giá trị thích nghi, các cá thể

6

có độ thích nghi tốt sẽ được chọn lọc để tạo thành quần thể ở thế hệ mới. Quá

trình này được mô tả như sau:

- Sắp xếp quần thể theo thứ tự mức độ thích nghi giảm dần;

- Loại bỏ các nhiễm sắc thể ở cuối dãy. Giữ lại n cá thể tốt nhất.

Ưu điểm:

Hầu hết các kĩ thuật tối ưu thông thường tìm kiếm từ một đỉnh, trong khi

đó GA hoạt động trên tập hợp đỉnh (điểm tối ưu), vì vậy GA giúp tăng cơ hội

tiếp cận tối ưu toàn cục và tránh hội tụ sớm tại điểm cục bộ địa phương.

Một điều dễ nhận thấy, với bài toán xác định thực đơn khẩu phần dinh

dưỡng phòng bệnh béo phì cho trẻ dưới 6 tuổi, GA cho phép thu nhỏ không

gian tìm kiếm. GA chỉ tập trung vào những vùng không gian mà có khả năng

xuất hiện khẩu phần ăn tốt. Phép lai ghép cho phép tiến gần đến khẩu phần ăn

tốt hơn và phép đột biến sẽ chuyển đến tìm kiếm ở các vùng không gian có khả

năng chứa khẩu phần ăn tốt khác.

Nhược điểm:

Việc biểu diễn các khẩu phần trong GA thường có định dạnh cố định.

Chính vì vậy chúng ta không thể có đồng thời khẩu phần có ba món, khẩu phần

có bốn món trong cùng một thuật toán di truyền. Điều này hạn chế khả năng

của chương trình vì chỉ cho phép số lượng món cố định, trong khi thực tế luôn

thay đổi thường xuyên.

Thời gian thực hiện thuật toán cũng là một vấn đề cần lưu ý. Mặc dù so

với các phương pháp tìm kiếm cổ điển thì thuật toán thực hiện nhanh hơn,

nhưng nếu phải trải qua rất nhiều thế hệ mới xác định được khẩu phần ăn tốt

thì sẽ rất tốn kém thời gian.

Việc xây dựng hàm mục tiêu cũng rất đáng lưu ý. Làm thế nào để xây

dựng các tiêu chí đánh giá phù hợp là rất quan trọng. Các tiêu chí này sẽ ảnh

hưởng trực tiếp đến kết quả của bài toán vì nó quyết định các vùng tập trung

7

tìm kiếm. Chỉ cần đánh giá sai một trong các tiêu chí thuật toán có thể trả lại

kết quả không tốt. Tuy nhiên việc xây dựng các tiêu chí lại gặp nhiều khó khăn

do các khẩu phần ăn có những ràng buộc về chế độ dinh dưỡng và điều kiện

biên (phòng bệnh béo phì).

1.2.1.3. Mạng Neural

Mạng Neural nhân tạo, gọi tắt là mạng nơron, là một mô hình xử lí thông

tin phỏng theo cách thức xử lí thông tin của các hệ nơron sinh học. Nó được tạo

nên từ một số lượng lớn các phần tử (gọi là nơron) kết nối với nhau thông qua

các liên kết (gọi là trọng số liên kết) làm việc như một thể thống nhất để giải

quyết một vấn đề cụ thể nào đó.

Một mạng nơron nhân tạo được cấu hình cho một ứng dụng cụ thể thông

qua một quá trình học từ tập các mẫu huấn luyện. Bản chất học là quá trình hiệu

chỉnh trọng số liên kết giữa các nơron sao cho giá trị hàm lỗi là nhỏ nhất.

Mạng Neural dùng để phân loại hoặc đánh giá và lựa chọn một khẩu phần

ăn trong các khẩu phần ứng viên. Mạng luôn có hai trạng thái học và ánh xạ. Ở

trạng thái học, mạng sẽ sử dụng dữ liệu đầu vào được cung cấp để cập nhật các

trọng số sao cho lỗi trên mẫu học là thấp nhất có thể. Tuy nhiên trong quá trình

học cần tránh hiện tượng quá khớp xảy ra. Hiện tượng quá khớp là hiện tượng

mạng hoạt động tốt trên dữ liệu học nhưng không tốt trên dữ liệu khác. Trạng

thái ánh xạ là trạng thái mà mạng sử dụng các trọng số được cập nhật trong quá

trình học cho các mẫu mới để đưa ra quyết định tương ứng.

Có ba phương pháp học phổ biến là học có giám sát, học không giám sát

và học tăng cường.

Học có giám sát

Trong học có giám sát, ta được cho trước một tập ví dụ đầu vào gồm các

cặp . Và mục tiêu là tìm một hàm f đầu ra (trong lớp các hàm

được phép) khớp với các ví dụ. Nói cách khác, hệ thống học (ở đây là mạng

8

Neural) sẽ phải tìm cách thay đổi các tham số bên trong của mình (các trọng số

và các ngưỡng) để tạo nên một ánh xạ có khả năng ánh xạ các đầu vào thành

các đầu ra mong muốn. Sự thay đổi này được tiến hành nhờ việc so sánh giữa

đầu ra thực sự và đầu ra mong muốn.

Học không có giám sát

Trong học không có giám sát, ta được cho trước một số dữ liệu x và hàm

chi phí cần được cực tiểu hóa có thể là một hàm bất kì của dữ liệu x và đầu ra

của mạng, f - hàm chi phí được quyết định bởi phát biểu của bài toán.

Học tăng cường

Trong học tăng cường, dữ liệu x thường không được cho trước mà được

tạo ra trong quá trình một agent tương tác với môi trường. Tại mỗi thời điểm t,

agent thực hiện hành động yt và môi trường tạo một quan sát xt với một chi phí

tức thời Ct, theo một quy trình động nào đó (thường là không được biết). Mục

tiêu là một sách lược lựa chọn hành động để cực tiểu hóa một chi phí giới hạn

nào đó, nghĩa là chi phí tích lũy mong đợi. Quy trình hoạt động của môi trường

và chi phí dài hạn cho mỗi sách lược thường không được biết, nhưng có thể

ước lượng được.

Ưu điểm:

Mạng nơron xử lí song song nên tốc độ xử lí nhanh.

Mạng nơron có khả năng học hỏi. Nếu được thiết kế tốt và có nhiều dữ

liệu thì sau quá trình huấn luyện mạng có thể được sử dụng để xác định kết quả

tốt nhất mà nó tìm được. Các mạng có chất lượng thường cho kết quả đúng khá

cao.

Nhược điểm:

Mạng chỉ có thể làm việc với các dữ liệu số.

Để mạng hoạt động đạt hiệu quả cao thì điều kiện cần là phải có một bộ

dữ liệu đủ lớn cho quá trình học của mạng.

9

Mạng không thể đưa ra được cơ chế giải thích.

Các giải thuật của mạng đôi khi chưa đảm bảo tính hội tụ cần thiết cho

quá trình sử dụng.

1.2.2. Sử dụng kĩ thuật Tập mờ (FL)

Tập mờ và logic mờ dựa trên các suy luận của con người với các thông

tin không chính xác hoặc không đầy đủ để hiểu biết và điều khiển hệ thống một

cách chính xác.

Các phương pháp đã nêu trên hầu như đều yêu cầu thông tin input đầu

vào phải ở dạng tường minh. Tuy nhiên, trong thực tế, các thông tin mà chúng

ta nhận được thường là các thông tin ở dạng mờ (nhập nhằng, không rõ ràng).

Vì vậy, các phương pháp trên đều không thể xử lí được thông tin dạng này.

Mặc dù có một số phương pháp của khai phá dữ liệu có thể chấp nhận các dữ

liệu đầu vào không đầy đủ nhưng giá trị các thuộc tính nhất thiết phải rõ ràng,

không nhập nhằng. Vì lẽ đó chúng ta chỉ có thể sử dụng logic mờ để xử lí các

thông tin nhập nhằng, không tường minh đó.

Các thông tin trước khi được xử lí sẽ được làm mờ hóa. Thông tin đã mờ

hóa này sẽ được áp dụng các hệ luật của hệ thống để cho ra kết quả mờ. Tập hệ

luật này được xây dựng khi thiết kế hệ thống và các tham số cũng được điều

chỉnh để thích hợp với các thông tin mà hệ thống xử lí. Sau khi có kết quả mờ,

kết quả này sẽ được giải mờ và hệ thống cho ra kết quả output đầu ra mong

muốn.

Trong bài toán xác định thực đơn khẩu phần dinh dưỡng phòng bệnh béo

phì cho trẻ, các dữ liệu đầu vào là không rõ ràng. Mỗi món ăn bao gồm nhiều

thành phần dinh dưỡng như: chất đạm, chất béo, calo, … mỗi khẩu phần lại có

nhiều món ăn. Giá trị các thành phần này thường không chính xác do quá trình

chế biến món ăn và chúng dao động trong một khoảng nhất định. Chính vì vậy,

việc áp dụng logic mờ vào bài toán này là hoàn toàn tự nhiên. Các giá trị mờ sẽ

10

được đánh giá bằng hệ thống mờ và kết quả đầu ra sau khi đã giải mờ sẽ cho ta

biết chất lượng của khẩu phần ăn tương ứng. Các khẩu phần ăn ứng viên sẽ lần

lượt được đánh giá và khẩu phần ăn được đánh giá cao nhất sẽ được lựa chọn.

Tuy nhiên, khi xây dựng hệ thống, chúng ta sẽ gặp phải vấn đề kết hợp

tập luật lại với nhau. Chúng ta không thể xây dựng các luật riêng rẽ để đánh giá

khẩu phần ăn vì các thông số của một khẩu phần ăn đều liên quan mật thiết đến

nhau. Ngoài ra, chúng ta cũng phải gán trọng số cho từng luật vì không phải

luật nào cũng quan trọng như nhau. Ví dụ khẩu phần ăn có chứa hai món kị

nhau sẽ được gán trọng số khác so với khẩu phần ăn có hàm lượng dư thừa chất

béo. Điều này làm nảy sinh vấn đề xây dựng bộ trọng số cho các luật.

Việc xây dựng trọng số có thể tham khảo ý kiến chuyên gia. Việc kết

hợp các luật lại với nhau cũng không quá khó khăn. Vấn đề là chúng ta phải

xác định được mô hình nào phù hợp với bài toán.

Ưu điểm:

Logic mờ có tính mềm dẻo và linh hoạt.

Logic mờ chấp nhận dữ liệu đầu vào nhập nhằng, không rõ ràng.

Logic mờ có thể mô hình hóa các hàm phi tuyến với độ phức tạp bất kì.

Cơ sở của logic mờ chính là các giao tiếp, suy luận của con người về sự

vật hiện tượng trong thế giới thực. Nói cách khác, logic mờ dựa vào ngôn ngữ

tự nhiên. Do đó có nhiều cách phát biểu khác nhau trong logic mờ.

Nhược điểm:

Điều đầu tiên phải kể đến là việc xây dựng tập luật hợp thành dựa hoàn

toàn trên kinh nghiệm của chuyên gia vì vậy mang tính chủ quan.

Một điểm nữa là hàm liên thuộc của tập mờ có thể biểu diễn theo những

dạng đồ thị khác nhau dẫn đến không nhất quán.

11

Do có nhiều phương pháp để xác định giá trị đầu ra rõ (hay còn gọi là

quá trình giải mờ) nên việc phương pháp nào được lựa chọn cũng gây ảnh

hưởng đến độ phức tạp và trạng thái làm việc của toàn bộ hệ thống.

1.2.3. Sử dụng kết hợp giữa AI và FL

Khi khảo sát mạng nơron và logic mờ, ta thấy mỗi loại đều có điểm mạnh,

điểm yếu riêng của nó.

Đối với logic mờ, ta dễ dàng thiết kế một hệ thống mong muốn chỉ bằng

các luật Nếu - Thì (If - Then). Với đa số ứng dụng thì điều này cho phép tạo ra

lời giải đơn giản hơn, trong khoảng thời gian ngắn hơn. Thêm nữa, ta dễ dàng

sử dụng những hiểu biết của mình về đối tượng để tối ưu hệ thống một cách

trực tiếp.

Tuy nhiên, bên cạnh đó hệ điều khiển mờ còn tồn tại một số khuyết điểm

như việc thiết kế và tối ưu hóa hệ logic mờ đòi hỏi phải có một số kinh nghiệm

về điều khiển đối tượng, đối với người mới thiết kế lần đầu điều đó hoàn toàn

không đơn giản. Mặt khác, còn hàng loạt những câu hỏi khác đặt ra cho người

thiết kế mà nếu chỉ dừng lại ở tư duy logic mờ thì hầu như chưa có lời giải, ví

dụ: Số tập mờ trong mỗi biến ngôn ngữ cần chọn bao nhiêu là tối ưu? Hình

dạng các tập mờ thế nào? Vị trí mỗi tập mờ ở đâu? Việc kết hợp các tập mờ

như thế nào?

Đối với mạng nơron, chúng có một số ưu điểm như xử lí song song nên

tốc độ xử lí nhanh; Mạng nơron có khả năng học hỏi; Ta có thể huấn luyện

mạng để xấp xỉ một hàm phi tuyến bất kì, đặc biệt khi đã biết một tập dữ liệu

vào/ra … Song nhược điểm cơ bản của mạng nơron là khó giải thích rõ ràng

hoạt động của mạng nơron như thế nào. Do vậy việc chỉnh sửa mạng nơron rất

khó khăn.

Bảng so sánh các tiêu chí cơ bản của mạng nơron và logic mờ thể hiện

trái ngược nhau

12

Tiêu chí Mạng nơron Logic mờ

- Thông qua trọng số được - Được thể hiện ngay tại

thể hiện ẩn trong mạng luật hợp thành Thể hiện tri thức - Khó giải thích và khó sửa - Dễ kiểm chứng hoạt động

đổi và dễ sửa đổi

Xử lí thông tin Định lượng Định lượng và định tính không chắc chắn

Trong nơron và trọng số Trong luật hợp thành và Lưu giữ tri thức của từng đường ghép nối hàm thuộc

Khả năng cập Thông qua quá trình học và Không có nhật và nâng cao huấn luyện kiến thức

Tính nhạy cảm

với những thay Thấp Cao

đổi của mô hình

Bảng 1.1: So sánh các tiêu chí cơ bản của mạng nơron và logic mờ

Từ những phân tích trên, ta thấy nếu kết hợp mạng nơron và logic mờ ta

sẽ có một hệ lai với ưu điểm của cả hai: logic mờ cho phép thiết kế hệ thống dễ

dàng, tường minh, trong khi mạng nơron cho phép học những gì mà ta yêu cầu

về bộ điều khiển. Nó sửa đổi các hàm phụ thuộc về hình dạng, vị trí và sự kết

hợp, … hoàn toàn tự động. Điều này làm giảm bớt thời gian cũng như giảm bớt

chi phí khi phát triển hệ thống.

1.2.4. Sử dụng hệ hỗ trợ quyết định 1.2.4.1. Khái niệm hệ hỗ trợ quyết định (DSS)

Năm 1970, Scott Norton đưa những khái niệm đầu tiên về hệ trợ giúp quyết định (Decision Support System, DSS). Ông định nghĩa: “DSS là các hệ dựa trên máy tính, có tính tương tác, giúp các nhà ra quyết định dùng dữ liệu

13

và mô hình để giải các bài toán phi cấu trúc, những bài toán mở, phức tạp với lời giải không hoàn chỉnh”. 1.2.4.2. Các thành phần của hệ hỗ trợ quyết định

Một hệ hỗ trợ quyết định gồm có ba thành phần chính:

 Quản lí dữ liệu (Data Management): Thực hiện công việc lưu trữ các thông tin của hệ và phục vụ cho việc lưu trữ, cập nhật và truy vấn thông tin;

 Quản lí mô hình (Model Management) hay còn gọi là hệ quản trị cơ sở mô hình (Model Base Management System, MBMS): bao gồm các mô hình ra quyết định (DSS models) và việc quản lí các mô hình này;

 Quản lí giao diện người dùng (User Interface Management): quản lí việc giao tiếp và ra lệnh giữa người dùng cuối và hệ ra quyết định.

1.2.4.3. Mô hình ra quyết định

Các biến điều khiển

Biến kết quả Mối quan hệ giữa các biến Các biến quyết định

Hình 1.1: Cấu trúc tổng quát của mô hình

Mô hình quy chuẩn (Normative Model): Mô hình này xem xét tất cả các

phương án và chọn ra phương án tối ưu.

Mô hình mô tả (Desscriptive Model): Mô hình này xem xét một tập hợp

các điều kiện theo ý người dùng và xem xét các phương án theo các điều kiện

này và đưa ra một kết quả thỏa đáng.

1.2.4.4. Đặc điểm của hệ hỗ trợ quyết định (DSS)

14

DSS cơ bản hỗ trợ các nhà ra quyết định trong các tình huống nửa cấu

trúc và phi cấu trúc bằng cách kết hợp phán xử của con người và xử lí thông tin

bằng máy tính. Các bài toán như vậy không thể/ không thuận tiện giải quyết

được chỉ bằng các công cụ máy tính hóa hay các phương pháp định lượng.

Phù hợp cho các cấp quản lí khác nhau từ cao đến thấp.

Phù hợp cho cá nhân lẫn nhóm. Các bài toán ít có tính cấu trúc thường

liên đới đến nhiều cá nhân ở các đơn vị chức năng hay mức tổ chức khác nhau

cũng như ở các tổ chức khác.

Hỗ trợ cho các quyết định tuần tự, liên thuộc, được đưa ra một lần, vài

lần hay lặp lại.

Hỗ trợ cho các giai đoạn của quá trình ra quyết định: tìm hiểu, thiết kế,

lựa chọn và thực hiện.

Phù hợp cho một số các phong cách và quá trình ra quyết định.

Có thể tiến hóa theo thời gian. Người dùng có thể thêm, sửa, xóa, kết

hợp, thay đổi các phần tử cơ bản của hệ thống.

Dễ dùng và thân thiện với người dùng.

Nhằm vào nâng cao tính hiệu dụng của quyết định (chính xác, thời gian

tính, chất lượng) thay vì là tính hiệu quả (giá phí của việc ra quyết định).

Người ra quyết định kiểm soát toàn bộ các bước của quá trình ra quyết

định, hệ hỗ trợ quyết định chỉ trợ giúp, không thay thế người ra quyết định.

Người dùng cuối cùng có thể tự kiến tạo và sửa đổi các hệ thống nhỏ và

đơn giản.

Thường dùng mô hình để phân tích các tình huống ra quyết định.

Cung ứng các truy vấn dữ liệu từ nhiều nguồn, dạng thức và kiểu khác

nhau.

15

Có thể dùng như một công cụ độc lập hay kết hợp với các hệ hỗ trợ quyết

định/ ứng dụng khác, dùng đơn lẻ hay trên một mạng lưới máy tính (Internet,

Extranet) bất kì với công nghệ WEB.

1.2.4.5. Phân loại hệ hỗ trợ quyết định Hệ hỗ trợ quyết định được phân loại dựa trên nhiều tiêu chí. Hiện nay,

vẫn chưa có cách phân loại thống nhất. Sau đây là 2 cách phổ biến nhất:

a/ Theo DSS-Glossary có tất cả 5 loại Hệ hỗ trợ quyết định

Hướng giao tiếp (Communication-Driven DSS): Hệ hỗ trợ quyết định

sử dụng mạng và công nghệ viễn thông để liên lạc và cộng tác. Công nghệ viễn

thông bao gồm: Mạng cục bộ (LAN), mạng diện rộng (WAN), Internet, ISDN,

VPN... là then chốt trong việc hỗ trợ ra quyết định. Các ứng dụng của hệ hỗ trợ

quyết định hướng giao tiếp là phần mềm nhóm (Groupware), hội thảo từ xa

(Videoconferencing), bản tin (Bulletin Boards).

Hướng dữ liệu (Data-Driven DSS): Hệ hỗ trợ quyết định dựa trên việc

truy xuất và xử lí dữ liệu. Phiên bản đầu tiên được gọi là Hệ chỉ dành cho việc

truy xuất dữ liệu (Retrieval-Only DSS), kho dữ liệu (DatawareHouse) là một

cở sở dữ liệu tập trung chứa thông tin từ nhiều nguồn đồng thời sẵn sàng cung

cấp thông tin cần thiết cho việc ra quyết định, xử lí phân tích trực tuyến (Online

Analytical Processing, OLAP) có nhiều tính năng cao cấp vì cho phép phân tích

dữ liệu theo nhiều chiều, ví dụ dữ liệu bán hàng cần phải được phân tích theo

nhiều chiều như theo vùng, theo sản phẩm, theo thời gian...

Hướng tài liệu (Document-Driven DSS): Hệ hỗ trợ quyết định dựa trên

việc truy xuất và phân tích các văn bản, tài liệu... Trong một công ty có thể có

rất nhiều văn bản như chính sách, thủ tục, biên bản cuộc họp, thư tín... Internet

cho phép truy xuất các kho tài liệu lớn như kho văn bản, hình ảnh, âm thanh, ...

Một công cụ tìm kiếm hiệu quả là một phần quan trọng đối với các hệ hỗ trợ

quyết định dạng này.

16

Hướng tri thức (Knowledge-Driven DSS): Hệ hỗ trợ quyết định có thể

đề nghị và đưa ra những tư vấn cho người ra quyết định. Những hệ này là các

hệ chuyên gia với một kiến thức chuyên ngành cụ thể, nắm vững các vấn đề

trong chuyên ngành đó và có kĩ năng để giải quyết những vấn đề này. Các công

cụ khai thác dữ liệu cũng có thể dùng để tạo ra các hệ dạng này.

Hướng mô hình (Model-Driven DSS): theo kết xuất hệ thống.

b/ Theo Holsapple và Whinston (1996) phân ra 6 loại Hệ hỗ trợ quyết định

Hướng văn bản (Text-Oriented DSS): Thông tin (bao gồm dữ liệu và

kiến thức) được lưu trữ dưới dạng văn bản. Vì vậy hệ thống đòi hỏi lưu trữ và

xử lí các văn bản một cách hiệu quả. Các công nghệ mới như Hệ quản lí văn

bản dựa trên Web, Intelligent Agents có thể được sử dụng cùng với hệ này.

Hướng cơ sở dữ liệu (Database-Oriented DSS): Cơ sở dữ liệu đóng vai

trò chủ yếu trong hệ này. Thông tin trong cơ sở dữ liệu thường có cấu trúc chặt

chẽ, có mô tả rõ ràng. Hệ này cho phép người dùng truy vấn thông tin dễ dàng

và rất mạnh về cảnh báo.

Hướng bản tính (Spreasheet-Oriented DSS): Một bản tính là một mô

hình để cho phép người dùng thực hiện phân tích trước khi ra quyết định. Bản

tính có thể bao gồm nhiều mô hình thống kê, lập trình tuyến tính... Bản tính phổ

biến nhất là Microsoft Excel. Hệ này thường được dùng rộng rãi trong các hệ

liên quan tới người dùng cuối.

Hướng người giải quyết (Solver-Oriented DSS): Một trợ giúp là một

giải thuật thuật hay chương trình để giải quyết một vấn đề cụ thể chẳng hạn như

tính lượng hàng đặt tối ưu hay tính toán xu hướng bán hàng. Một số trợ giúp

khác phức tạp như là tối ưu hóa đa mục tiêu.

Hướng luật (Rule-Oriented DSS): Kiến thức của hệ này được mô tả

trong các tập luật hay lí lẽ. Hệ này còn được gọi là hệ chuyên gia. Các qui luật

17

này có thể là định tính hay định lượng. Ví dụ như hướng dẫn không lưu, hướng

dẫn giao thông trên biển...

Hướng kết hợp (Compound DSS): Một hệ tổng hợp có thể kết hợp hai

hay nhiều hơn trong số năm hệ trên.

18

CHƯƠNG 2

CƠ SỞ LÍ THUYẾT XÁC ĐỊNH KHẨU PHẦN ĂN

2.1. Năng lượng

2.1.1. Nguồn cung cấp năng lượng cho cơ thể

Hiện nay khoa học về dinh dưỡng đã xác định được nhu cầu về năng

lượng của con người. Nhu cầu về năng lượng của con người khác nhau và phụ

thuộc vào nhiều yếu tố.

Nguồn cung cấp năng lượng cho người và động vật là thức ăn. Năng

lượng vào cơ thể chủ yếu dưới dạng hóa năng của thức ăn. Hầu hết thức ăn đều

chứa tất cả các chất dinh dưỡng. Chỉ có 3 chất: Protein, Lipit, Gluxit cung cấp

năng lượng chính cho cơ thể. Giá trị năng lượng của mỗi loại thức ăn phụ thuộc

vào hàm lượng các chất dinh dưỡng sinh năng lượng trong đó.

Bằng thí nghiệm, người ta đã chứng minh được rằng các chất dinh dưỡng

khi bị đốt cháy hoặc qua quá trình ôxi hóa trong cơ thể sẽ sản sinh ra năng

lượng (hình 2.2).

Hình 2.1: Mô hình Bom calorie

Quá trình phản ứng sinh nhiệt từ các chất dinh dưỡng trong Bom calorie

được biểu diễn bằng cơ chế phản ứng sau:

Protein, Lipit, Gluxit + O2  Năng lượng + H2O + CO2

19

Quá trình này cũng tương tự trong cơ thể người, quá trình đó khá giống

ở cơ và gan. Trong cơ thể người năng lượng tạo ra từ cùng một lượng thức ăn

so với ở Bom calorie thì thấp hơn. Do trong cơ thể một lượng thức ăn không

được tiêu hóa hấp thu hết thải ra theo phân, lý do thứ hai là trong cơ thể một số

chất không được đốt cháy hoàn toàn và thải ra theo nước tiểu như protein, urê,

acid uric...

Năng lượng sinh ra do phản ứng ôxi hóa của mỗi chất là:

- 1gam chất Protein cung cấp 4kcal hay 16,7472 kJ;

- 1gam chất Lipit cung cấp 9kcal hay 37,6812 kJ;

- 1gam chất Gluxit cung cấp 4kcal hay 16,7472 kJ.

Theo định nghĩa, 1 kilocalo là lượng nhiệt cần thiết để nâng 1 lít nước

lên 10C.

(1kcal = 4,1868 kJ; 1kJ = 0,238846 kcal)

Năng lượng sinh ra

Chất Ở Bom calorie Ở cơ thể

kcal kcal kJ

Protein 5,65 4 17

Carbohydrate 4,1 4 17

Lipit 9,45 9 38

Rượu 7,1 7 29

Bảng 2.1: Giá trị sinh nhiệt của các chất

2.1.2. Năng lượng cần thiết cho chuyển hóa cơ bản

Chuyển hóa cơ bản là năng lượng cơ thể tiêu hao trong điều kiện nghỉ

ngơi, nhịn đói và ở nhiệt độ môi trường thích hợp. Đó là năng lượng cần thiết

để duy trì các chức phận sống của cơ thể như tuần hoàn, hô hấp, bài tiết, tiêu

20

hóa, duy trì tính ổn định các thành phần của dịch thể bên trong và bên ngoài tế

bào.

Người ta biết rằng hoạt động của gan cần đến 27% năng lượng của

chuyển hoá cơ bản, não 19%, tim 10%, thận 10%, cơ 18%, và các bộ phận còn

lại chỉ 16%. Nhiều yếu tố ảnh hưởng đến chuyển hóa cơ bản: Tình trạng hệ

thống thần kinh trung ương, cường độ hoạt động các hệ thống nội tiết và men.

Chức phận một số hệ thống nội tiết làm chuyển hóa cơ bản tăng (ví dụ giáp

trạng) trong khi đó hoạt động một số tuyến nốt tiết khác làm giảm chuyển hóa

cơ bản (ví dụ tuyến yên). Chuyển hóa cơ bản của trẻ em cao hơn ở người lớn,

tuổi càng nhỏ chuyển hóa cơ bản càng cao. Ở người đứng tuổi và người già

chuyển hoá cơ sở thấp dần song song với sự giảm khối nạc và tăng khối mỡ. Ở

người trưởng thành, năng lượng cho chuyển hóa cơ bản vào khoảng 1kcal/kg

cân nặng/1 giờ.

Ở người phụ nữ có thai chuyển hóa tăng trong thời kì mang thai, và cao

nhất ở những tháng cuối, trung bình ở phụ nữ mang thai chuyển hóa cơ bản

tăng 20%. Khi một người bị thiếu dinh dưỡng hay bị đói, chuyển hóa cơ bản

cũng giảm, hiện tượng đó sẽ mất đi khi nào cơ thề được đáp ứng đủ nhu cầu

năng lượng. Cấu trúc cơ thể của một người có ảnh hưởng đến chuyển hóa cơ

bản, so sánh người có cùng trọng lượng, người có khối mỡ nhiều chuyển hóa

cơ bản thấp hơn so với người có khối nạc nhiều.

Nhiệt độ cơ thể liên quan với chuyển hóa cơ bản, khi cơ thể bị sốt tăng

lên 10C thì chuyển hóa cơ bản tăng 7%. Nhiệt độ môi trường cũng có ảnh hưởng

tới chuyển hóa cơ bản song không lớn lắm, thường khi nhiệt độ môi trường

tăng thì chuyển hóa cơ bản cũng tăng lên và ngược lại nhiệt độ môi trường giam

chuyển hóa cơ bản cũng giảm.

21

Sau một bữa ăn chuyển hóa cơ bản tăng lên từ 5% đến 30%, người ta gọi

đó là tác dụng động lực đặc hiệu, trong đó Protein tăng tới 40%, Lipit 14%,

Gluxit 6%.

2.1.3. Nhu cầu năng lượng hàng ngày

Nhu cầu năng lượng cả ngày là tổng số năng lượng cần thiết tiêu hao

trong ngày của cơ thể. Nhu cầu năng lượng thay đổi theo nhiều yếu tố: tuổi,

giới tính, nghề nghiệp, khí hậu, ...

- Tuổi: nếu tính nhu cầu năng lượng theo kg thể trọng thì cao nhất ở trẻ

sơ sinh, giảm dần theo tuổi, từ 20 - 39 tuổi thì giữ không thay đổi, sau đó từ 40

tuổi lại giảm dần đi, vì trẻ em là cơ thể đang lớn và phát triển nên có nhu cầu

cao về năng lượng.

- Giới tính: từ 10 tuổi trở đi, nhu cầu năng lượng bắt đầu khác nhau giữa

hai giới: nam cao hơn nữ cùng tuổi. Nhu cầu năng lượng của nữ còn thay đổi

rất nhiều theo hoạt động sinh sản.

- Nghề nghiệp: với người trưởng thành, người ta thường chia thành 4

nhóm lao động. Mức lao động khác nhau thì nhu cầu năng lượng của cơ thể

cũng khác nhau.

Ví dụ: nhu cầu năng lượng của nam, tuổi từ 18 - 30 tuổi trong ngày là:

+ Lao động nhẹ cần: 2300kcal

+ Lao động vừa cần: 2700kcal

+ Lao động nặng cần: 3200kcal

+ Lao động cực nặng cần: 3500 - 4000kcal

- Khí hậu: trong môi trường lạnh, tiêu hao năng lượng tăng thêm 5%. Do

những phương tiện cải tạo vi khí hậu được sử dụng rộng rãi hơn, nên ảnh hưởng

khí hậu đối với nhu cầu năng lượng ngày càng giảm rõ rệt.

22

Thể trọng Nhu cầu năng lượng Lứa tuổi (kcal/ngày) (kg)

Dưới 1 tuổi (cả 2 giới) 9,0 820

1 - 3 tuổi (cả 2 giới) 13,4 1360

4 - 6 tuổi (cả 2 giới) 20,2 1830

7 - 9 tuổi (cả 2 giới) 28,1 2190

10 - 12 tuổi (nam) 36,9 2600

10 - 12 tuổi (nữ) 38,0 2350

13 - 15 tuổi (nam) 51,3 2900

13 - 15 tuổi (nữ) 49,0 2490

16 - 19 tuổi (nam) 62,9 3070

16 - 19 tuổi (nữ) 54,4 2310

65,0 3000 20 - 39 tuổi lao động vừa (nam)

55,0 2200 20 - 39 tuổi lao động vừa (nữ)

Bảng 2.2: Nhu cầu năng lượng (tính theo kcal/ngày)

2.1.4. Cách tính nhu cầu năng lượng cho một ngày

Để xác định nhu cầu năng lượng, người ta cần biết nhu cầu năng lượng

cho chuyển hóa cơ bản và thời gian, tính chất các hoạt động, thể lực trong ngày.

Theo Tổ chức Y tế thế giới, có thể tính nhu cầu năng lượng cả ngày từ nhu cầu

chuyển hóa cơ bản theo các hệ số ở bảng sau (bảng 2.3 và 2.4):

23

Chuyển hóa cơ bản (kcal/ngày) Nhóm tuổi

(năm) Nam Nữ

60,9 * cân nặng (kg) - 0 - 3 61,0 * cân nặng (kg) - 51 54

22,5 * cân nặng (kg) + 3 - 10 22,7 * cân nặng (kg) + 495 499

12,2 * cân nặng (kg) + 10 - 18 17,5 * cân nặng (kg) + 651 746

14,7 * cân nặng (kg) + 18 - 30 15,3 * cân nặng (kg) + 679 496

30 - 60 11,6 * cân nặng (kg) + 879 8,7 * cân nặng (kg) + 829

10,5 * cân nặng (kg) + > 60 13,5 * cân nặng (kg) + 487 596

Bảng 2.3: Công thức tính chuyển hóa năng lượng cơ bản dựa theo cân nặng

Tính chất lao động Nam Nữ

Lao động nhẹ 1,55 1,56

Lao động vừa 1,78 1,61

Lao động nặng 2,10 1,82

Bảng 2.4: Hệ số nhu cầu năng lượng theo tính chất lao động Ví dụ: Muốn tính nhu cầu năng lượng của một nhóm bé trai, lứa tuổi từ

3 - 10, cân nặng trung bình 22kg, loại lao động nhẹ ta tính như sau:

Tra bảng 2.3, ta tính được nhu cầu chuyển hóa cơ bản:

Tra tiếp bảng 2.4, ta tính được năng lượng cả ngày như sau:

24

2.2. Nhu cầu các chất dinh dưỡng cần thiết đối với cơ thể

Thức ăn cung cấp năng lượng cho cơ thể dưới dạng Protein, Lipit, Gluxit.

Thức ăn còn cung cấp các axit min, axit béo, vitamin và các chất khoáng cần

thiết cho cơ thể phát triển và duy trì: các hoạt động của tế bào và tổ chức. Người

ta thấy rằng sự thiếu hoặc thừa các chất dinh dưỡng trên so với nhu cầu đều dẫn

đến ảnh hưởng bất lợi tới sức khỏe và có thể dẫn đến bệnh tật.

2.2.1. Protein

Protein là thành phần dinh dưỡng quan trọng nhất. Chất Protein ở cơ thể

người chỉ có thể hình thành từ Protein của thức ăn. Chất Protein không thể tạo

thành từ chất Lipit và Gluxit.

Protein là thành phần cơ bản của các vật chất sống. Nó tham gia vào mỗi

một tế bào và là yếu tố tạo hình.

Cơ thể sử dụng Protein của thức ăn, chuyển hóa chúng và đồng thời tổng

hợp chúng như sau:

a ó h u ê i t a u Q

Thịt, cá, trứng/Protein của thức ăn

Axit amin

Tổng hợp Protein Sinh năng lượng

Hình 2.2: Sơ đồ sử dụng Protein từ thức ăn của cơ thể

Protein tham gia vào cân bằng năng lượng của cơ thể, khi tiêu hao năng

lượng nhiều mà lượng Lipit và Gluxit ăn vào không đầy đủ thì cơ thể sẽ tăng

cường phân hủy Protein để sinh ra năng lượng. Như vậy, nếu cơ thể thường

25

xuyên bị thiếu năng lượng thì cơ thể sẽ huy động Protein dự trữ, do đó cơ thể

sẽ gầy đi, thiếu Protein dẫn đến suy dinh dưỡng.

Protein có tỉ lệ khác nhau trong các loại thức ăn và với mỗi loại thức ăn,

giá trị dinh dưỡng của Protein cũng khác nhau. Vì vậy, giá trị dinh dưỡng của

Protein của thức ăn phụ thuộc vào chất lượng và số lượng của Protein có trong

mỗi loại thức ăn.

Nhu cầu của cơ thể về Protein phụ thuộc vào độ tuổi và các đối tượng

khác nhau.

Khẩu phẩn ăn hàng ngày cần có tính cân đối với Protein ở các chỉ tiêu:

+ Tương quan về cung cấp năng lượng;

+ Tỉ số Protein nguồn gốc động vật so với tổng số Protein: Đây là một

tiêu chuẩn nói lên chất lượng Protein trong khẩu phần ăn. Các tài liệu đều cho

rằng lượng Protein nguồn gốc động vật đạt 50% - 60% tổng số Protein ở khẩu

phẩn trẻ em và không nên thấp hơn 25% ở các lứa tuổi khác.

Nguồn thực phẩm giàu Protein là các loại thực phẩm có nguồn gốc động

vật như: thịt, cá, trứng, sữa, ... và các loại thực phẩm có nguồn gốc thực vật

như: lạc, vừng và các loại đậu đỗ.

2.2.2. Lipit

Lipit bao gồm chất béo, sáp, steroit, photpholipit là chất dinh dưỡng cần

thiết cho sự sống. Lipit là một trong 3 chất sinh năng lượng, nhưng Lipit là chất

cho nhiều năng lượng hơn cả.

Đặc điểm chung của Lipit là nó có thể hòa tan trong các dung môi hữu

cơ như: ete, benzen, ... mà không hòa tan trong nước. Lipit là dung môi cho các

Vitamin tan trong mỡ, chủ yếu là Vitamin A và Vitamin D. Thành phần quyết

định tính chất của Lipit là các axit béo.

Trong cơ thể người trưởng thành bình thường có khoảng 10% chất béo.

Lượng Lipit này tập trung chủ yếu ở tổ chức dưới da tạo thành lượng mỡ dự trữ

26

để cơ thể sử dụng khi cần thiết. Lipit còn bao quanh phủ tạng để ngăn ngừa các

va chạm và giữ chúng ở vị trí ổn định. Chất lượng và số lượng của mỡ dự trữ

phụ thuộc nhiều vào số lượng và loại thức ăn được sử dụng.

Tỉ lệ chất béo động vật với trẻ em nên chiếm 50% và các loại dầu thực

vật chiếm 50% tổng số chất béo ăn vào. Do đó, khuynh hướng thay thế hoàn

toàn mỡ động vật bằng dầu thực vật là không hợp lí.

Nhu cầu Lipit phụ thuộc theo tuổi, tính chất lao động, đặc điểm dân tộc

và điều kiện khí hậu. Ở xứ lạnh, tỉ lệ calo do chất béo tạo nên chiếm khoảng

35% tổng số calo của khẩu phần; ở vùng ôn đới là 30%; ở vùng nhiệt đới là

15% - 25%.

Khẩu phần ăn hàng ngày cần có sự cân đối Lipit:

+ Tỉ số năng lượng do Lipit cung cấp so với tổng số năng lượng;

+ Tính cân đối giữa các axit béo trong khẩu phần trên thực tế biểu hiện

bằng tương quan giữa Lipit nguồn gốc động vật và thực vật so với tổng số Lipit.

Nguồn thức ăn giàu Lipit là các loại thức ăn nguồn gốc động vật và các

loại đậu, đỗ, vừng, lạc ở thực vật.

2.2.3. Gluxit

Gluxit có nhiều trong các loại thực phẩm có nguồn gốc thực vật. Đây là

một trong 3 nguồn cung cấp năng lượng chủ yếu cho cơ thể.

Đặc điểm của Gluxit là có vị ngọt, dễ hòa tan trong nước. Tất cả các dạng

của Gluxit qua quá trình biến đổi trong cơ thể sẽ cho ra chủ yếu là Glucozo.

Cung cấp đầy đủ Gluxit theo thức ăn làm giảm sự phân hủy của Protein

đến mức tối thiểu và ngược lại. Nếu lượng Gluxit ăn vào không đầy đủ, cơ thể

sẽ phân hủy Protein dự trữ để sinh năng lượng.

Gluxit liên quan đến chuyển hóa Lipit. Khi cơ thể không được cung cấp

đầy đủ Gluxit thì cơ thể sẽ phân hủy Lipit dự trữ để sinh năng lượng. Nhưng

27

nếu ăn quá nhiều Gluxit thì năng lượng Gluxit thừa sẽ dễ dàng chuyển thành

lượng Lipit dự trữ ở dưới da, dưới màng bụng.

Tỉ lệ Gluxit trong thực phẩm khác nhau và sự tiêu hóa nhanh chậm trong

cơ thể cũng khác nhau.

Tùy từng lứa tuổi, đối tượng mà chúng ta sử dụng các loại Gluxit có trong

thực ăn cho thích hợp.

Nhu cầu Gluxit của cơ thể phụ thuộc vào tiêu hao năng lượng và tình

trạng sinh lí của cơ thể. Lao động thể lực càng nặng, nhu cầu Gluxit càng cao.

Nhu cầu Gluxit ở trẻ nhỏ là do nguồn sữa mẹ hoặc sữa bò cung cấp là chính, vì

vậy cần cho trẻ nhỏ ăn đầy đủ sữa, không nên cho trẻ ăn quá nhiều tinh bột.

Nhu cầu về Gluxit cần được cân đối so với Protein và Lipit trong khẩu

phần. Đối với người lao động trung bình, tỉ lệ giữa Protein, Lipit và Gluxit thích

hợp là 1 : 1 : 4. Đối với người lao động chân tay tỉ lệ có thể là 1 : 1 : 5. Ở người

già tỉ lệ thích hợp là 1 : 0,8 : 3.

Các lương thực, thực phẩm giàu Gluxit là các loại thức ăn nguồn gốc

thực vật như: gạo, ngô, mì, kê, khoai, các loại củ, đường kính, mật ong, ...

2.2.4. Các chất khoáng

Chất khoáng là thành phần quan trọng của tổ chức xương có tác dụng

duy trì áp lực thẩm thấu, có nhiều tác dụng trong các chức phận sinh lý và

chuyển hóa của cơ thể. Ăn thiếu chất khoáng sinh nhiều bệnh. Thiếu Iot gây

bướu cổ. Thiếu Fluo gây hà răng. Thiếu Canxi sẽ ảnh hưởng đến hoạt động của

cơ tim, tới chức phận tạo huyết và đông máu, gây bệnh còi xương ở trẻ em và

xốp xương ở người lớn và người già.

2.2.4.1. Canxi (Ca)

Canxi giúp cơ thể hình thành hệ xương và răng vững chắc, đảm bảo chức

phận thần kinh và sự đông máu bình thường. Canxi cần thiết cho các quá trình

chuyển hoá trong cơ thể.

28

Canxi chiếm 1/3 khối lượng chất khoáng trong cơ thể và 98%

Canxi nằm ở xương và răng. Cho nên Canxi rất cần thiết đối với trẻ em có bộ

xương đang phát triển.

Nhu cầu Canxi của cơ thể được xác định trong mối tương quan với

Photpho: tỉ số Ca/P mong muốn tối thiểu > 0,8 ở mọi lứa tuổi, tốt nhất là 1 -

1,5 (đặc biệt đối với trẻ em).

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Canxi đối với trẻ em như

sau:

Nhóm tuổi Nhu cầu Canxi khuyến nghị (mg/ngày)

< 6 tháng 300

6 - 11 tháng 400

1 - 3 tuổi 500

4 - 6 tuổi 600

7 - 9 tuổi 700

Bảng 2.5: Nhu cầu Canxi

Canxi có nhiều trong các thức ăn nguồn gốc động vật và thực vật. Sữa

và các chế phẩm từ sữa có hàm lượng Canxi cao và dễ hấp thu.

Trong cơ cấu bữa ăn nên có thêm đậu các loại nhất là đậu tương, có thêm

vừng lạc, rau quả, cá và thủy sản thì ngoài việc có thêm Protein và Lipit, chúng

ta sẽ không lo thiếu Canxi.

2.2.4.2. Photpho (P)

Một người trưởng thành bình thường có khoảng 400 - 500g Photpho,

80% Photpho của cơ thể tập trung trong xương, răng; 10% trong máu.

Photpho cùng với Canxi tham gia cấu tạo xương và răng.

Photpho tham gia cấu tạo nhiều hợp chất có hoạt tính sinh học cao, giữ

vị trí quan trọng trong chuyển hóa chất của cơ thể.

29

Nhu cầu Photpho theo sự tương quan giữa Photpho/Protein = 1/40.

Nhu cầu Photpho theo Canxi: Ca/P = 1/2 ở trẻ sơ sinh, trẻ lớn hơn là 2/3.

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Photpho đối với trẻ em

như sau:

Nhóm tuổi Nhu cầu Photpho khuyến nghị (mg/ngày)

< 6 tháng 90

6 - 11 tháng 275

1 - 3 tuổi 460

4 - 6 tuổi 500

7 - 9 tuổi 500

Bảng 2.6: Nhu cầu Photpho

Nguồn thực phẩm giàu Photpho như: đậu nành, hạnh nhân, cá ngừ, ...

2.2.4.3. Kali (K)

Cơ thể người trưởng thành bình thường có khoảng 100 - 140g Kali,

chiếm 0,02% trọng lượng cơ thể. Nơi có nồng độ Kali cao nhất là gan và cơ.

Kali cần thiết cho quá trình phân giải glucozo, cung cấp năng lượng cho

hoạt động của tế bào.

Kali tham gia vào quá trình chuyển hóa Protein.

Một người trưởng thành, bình thường mỗi ngày cần 2 - 4g Kali.

Thực phẩm giàu Kali là các loại có nguồn gốc thực vật như: củ cải, dưa

hấu, chuối ...

2.2.4.4. Natri (Na)

Một người trưởng thành bình thường có 80 - 100g Natri trong cơ thể.

Natri chủ yếu tập trung ở da, thận, cơ và gan.

Natri là chất chủ yếu để điều hòa áp suất thẩm thấu và pH của máu, các

dịch ngoại bào.

30

Một người trưởng thành bình thường cần 4 - 6g Natri mỗi ngày. Nhu cầu

tăng lên khi mất nhiều mồ hôi. Nhưng người ta sẽ tự động ăn mặn thêm trong

bữa ăn.

Nguồn cung cấp Natri của cơ thể chủ yếu là muối ăn (NaCl). Những thực

phẩm có nhiều Natri khác như: nước mắm, cá khô, ...

2.2.4.5. Sắt (Fe)

Cơ thể người trưởng thành bình thường có từ 3 - 4g sắt, trong đó 2/3

có ở hemoglobin là sắc tố của hồng cầu, phần còn lại dự trữ trong gan. Một

phần nhỏ hơn có ở thận, lách và các cơ quan khác.

Mặc dù số lượng không nhiều nhưng Sắt là một trong các thành phần

dinh dưỡng quan trọng nhất, có tầm quan trọng cơ bản đối với sự sống. Sắt là

thành phần của huyết sắc tố, myoglobin, các xitrocrom và nhiều enzim như

catalaza và các peroxidaza. Sắt vận chuyển oxi và giữ vai trò quan trọng trong

hô hấp tế bào.

Nhu cầu sắt thay đổi tùy theo điều kiện sinh lí. Trẻ sơ sinh ra đời với một

lượng Sắt dự trữ khá lớn ở gan và lách. Trong những tháng đầu, đứa trẻ sống

dựa vào lượng sắt dự trữ đó vì trong sữa mẹ có rất ít chất sắt. Ðó là lí do ngày

nay người ta khuyến khích các bà mẹ cho con ăn sam sớm hơn từ tháng thứ 5

so với trước đây thường là tháng thứ 6.

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Sắt đối với trẻ em như

sau:

31

Sắt (mg/ngày) theo giá trị sinh học khẩu

phần Nhóm tuổi

5%1 10%2 15%3

< 6 tháng 0,93

6 - 11 tháng 18,6 12,4 9,3

1 - 3 tuổi 11,6 7,7 5,8

4 - 6 tuổi 12,6 8,4 6,3

7 - 9 tuổi 17,8 11,9 8,9

1 Khẩu phần có giá trị sinh học Sắt thấp (khoảng 5% sắt được hấp thu):

Bảng 2.7: Nhu cầu Sắt

chế độ ăn đơn điệu, lượng thịt, cá < 30g/ngày hoặc lượng Vitamin C <

2 Khẩu phần có giá trị sinh học Sắt trung bình (khoảng 10% sắt được hấp

25mg/ngày.

thu): khẩu phần có lượng thịt, cá từ 30g - 90g/ngày hoặc Vitamin C từ 25 mg -

3 Khẩu phần có giá trị sinh học Sắt cao (khoảng 15% sắt được hấp thu):

75mg/ngày.

khẩu phần có lượng thịt, cá > 90g/ngày hoặc vitamin C > 75mg/ngày.

Sắt ở thịt được hấp thu khoảng 30%, đậu tương 20%, cá 15%, các thức

ăn thực vật như ngũ cốc, rau và đậu đỗ (trừ đậu tương) chỉ hấp thụ khoảng 10%.

Vitamin C hỗ trợ hấp thu sắt, còn các Phytat, Photphat cản trở sự hấp thụ sắt.

Sắt có nhiều trong các thức ăn nguồn gốc động vật, các hạt họ đậu nhất

là đậu tương. Các loại rau quả cũng là nguồn sắt quan trọng trong bữa ăn.

2.2.4.6. Iot (I)

Iot là thành phần dinh dưỡng cần thiết cho cơ thể. Ðó là thành phần cấu

tạo các nội tố của tuyến giáp trạng tyroxin, tridotyroxin giữ vai trò chuyển hóa

quan trọng. Khẩu phần đủ Iot là một trong các yếu tố có ảnh hưởng quyết định

32

đến sự tiết nội tố của tuyến giáp trạng. Khi thiếu Iot tuyến giáp trạng tăng hoạt

động, cố gắng bù trừ lượng thiếu và tuyến giáp phì đại tạo nên bướu cổ.

Iot trong thức ăn được hấp thụ ở ruột non và đi theo 2 đường chính,

khoảng 30% được sử dụng bởi tuyến giáp trạng đế tạo hóc môn, phần còn lại

ra theo nước tiểu.

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Iot đối với trẻ em như sau:

Nhóm tuổi Nhu cầu Iot khuyến nghị (mcg/ngày)

< 6 tháng 90

6 - 11 tháng 90

1 - 3 tuổi 90

4 - 6 tuổi 90

7 - 9 tuổi 90

Bảng 2.8: Nhu cầu Iot

Nguồn Iot tốt trong thức ăn là các sản phẩm ở biển và các loại rau trồng

trên đất nhiều Iốt.

2.2.4.7. Các yếu tố vi lượng khác

Ngoài Canxi, Photpho, Kali, Natri, Sắt, Iốt, các yếu tố khác cần thiết cho

cơ thể còn có Fluo, Kẽm, Magie, Đồng.

Kẽm là thành phần thiết yếu của cacbonhydraza và nhiều men khác cần

thiết cho chuyển hóa Protein và Gluxit. Biểu hiện của thiếu Kẽm là lớn không

bình thường và chức phận sinh dục kém phát triển. Nhiều trẻ em ăn uống kém,

lười ăn cũng có thể do thiếu Kẽm. Nhu cầu Kẽm của người trưởng thành khoảng

2,2 mg/ngày. Lượng Kẽm trong khẩu phần cần có để đáp ứng nhu cầu thay đổi

theo cơ cấu của khẩu phần và lượng Kẽm được sử dụng. Trong thời kì lớn, phụ

nữ mang thai và cho con bú nhu cầu cần cao hơn. Thức ăn nguồn gốc động vật

là nguồn Kẽm tốt như: thịt bò, lợn có từ 2 - 6 mg/100g; sữa từ 0,3 - 0,5 mg; cá

33

và hải sản 1,5g/100g; bột ngũ cốc cũng có nhưng phần lớn đã bị mất trong quá

trình xay xát.

Trong cơ thể người có khoảng 20 - 25g Magie. Đó là yếu tố cần thiết cho

hoạt động nhiều loại men tham gia vào các phản ứng oxi hóa. Nhu cầu ở người

trưởng thành khoảng 200 - 300mg/ngày. Magie có nhiều trong thức ăn nguồn

gốc thực vật.

Mặc dù vai trò của nhiều vi yếu tố khác đã được chứng minh nhưng còn

thiếu cơ sở khoa học để xác định nhu cầu của chúng.

2.2.5. Vitamin

Vitamin là những chất hữu cơ cần thiết với cơ thể và tuy nhu cầu đòi hỏi

với số lượng ít, nhưng chúng bắt buộc phải có trong thức ăn.

Vitamin được chia thành hai nhóm: các Vitamin tan trong nước và các

Vitamin tan trong chất béo. Các Vitamin tan trong nước khi thừa đều bài xuất

theo nước tiểu như vậy ít có đe dọa xảy ra tình trạng nhiễm độc Vitamin. Ngược

lại các Vitamin tan trong chất béo không thể đào thải theo con đường đó mà

các lượng thừa đều được dự trữ trong các mô mỡ, gan. Khả năng tích lũy của

gan lớn nên có thể có dự trữ đủ cho cơ thể trong thời gian dài, tuy vậy một

lượng quá cao Vitamin A và D có thể gây ngộ độc.

2.2.5.1. Vitamin A (Retinol)

Vitamin A có nhiều chức phận quan trọng trong cơ thể, trước hết là vai

trò với quá trình nhìn. Andehyt của retinol là thành phần thiết yếu của sắc tố

võng mạc Rodopsin. Khi gặp ánh sáng sắc tố này mất màu và quá trình này

kích thích các tế bào que ở võng mạc để nhìn thấy ánh sáng yếu. Biểu hiện của

nó được gọi là "quáng gà", đây là dấu hiệu sớm của thiếu vitamin A.

Vitamin A cần thiết để bảo vệ sự toàn vẹn của giác mạc và các tổ chức

biểu mô dưới da, khí quản, các tuyến nước bọt, ruột non, tinh hoàn...

Vitamin A tham gia vào các quá trình đáp ứng miễn dịch của cơ thể, làm

tăng sức đề kháng của cơ thể đối với bệnh tật.

34

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Vitamin A đối với trẻ em

như sau:

Nhóm tuổi Nhu cầu Vitamin A khuyến nghị (mcg/ngày)

< 6 tháng 375

6 - 11 tháng 400

1 - 3 tuổi 400

4 - 6 tuổi 450

7 - 9 tuổi 500

Bảng 2.9: Nhu cầu Vitamin A

Thức ăn có nguồn gốc động vật có nhiều Vitamin A tốt nhất. Vì gan là nơi dự trữ Vitamin A, nên gan có thành phần retinol cao nhất. Chất béo từ thịt và trứng cũng chứa một lượng Vitamin A đáng kể.

STT Tên thực phẩm mcg STT Tên thực phẩm mcg

1 Gan gà 6960 8 Trứng vịt 600

2 Gan lợn 6000 9 Bơ 360

3 Gan bò 5000 10 Bầu dục bò 330

4 Gan vịt 2960 11 Sữa bột toàn phần 318

5 Lươn 1500 12 Pho mát 275

6 Trứng vịt lộn 875 13 Thịt vịt 270

7 Trứng gà 700 14 Cá chép 181

Bảng 2.10: Thực phẩm thông dụng giàu Vitamin A (Hàm lượng trong 100g thực phẩm ăn được)

2.2.5.2. Vitamin D

Vitamin D giúp cơ thể hấp thu tốt Canxi và Photpho. Vai trò chính của

Vitamin D là tạo điều kiện thuận lợi cho sự hấp thu Canxi ở tá tràng.

35

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Vitamin D đối với trẻ em

như sau:

Nhóm tuổi Nhu cầu Vitamin D khuyến nghị (mcg/ngày)

< 6 tháng 5

6 - 11 tháng 5

1 - 3 tuổi 5

4 - 6 tuổi 5

7 - 9 tuổi 5

Bảng 2.11: Nhu cầu Vitamin D

Dầu cá thu là nguồn Vitamin D tốt, ngoài ra có thể kể đến gan, trứng, bơ.

Thức ăn nguồn gốc thực vật hoàn toàn không có Vitamin D. Nguồn Vitamin D

quan trọng cho cơ thể là sự nội tổng hợp trong da dưới tác dụng của tia tử ngoại

ánh sáng mặt trời.

2.2.5.3. Vitamin B1 (Thiamin)

Vitamin B1 có vai trò quan trọng trong chuyển hóa Gluxit để cung cấp

năng lượng. B1 giúp cơ thể phát triển bình thường, ăn ngon miệng.

Ngoài ra, B1 còn tham gia vào các quá trình chuyển hóa Protein như tăng

tổng hợp các axit amin.

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Vitamin B1 đối với trẻ em

như sau:

36

Nhóm tuổi Nhu cầu Vitamin B1 khuyến nghị (mg/ngày)

< 6 tháng 0,2

6 - 11 tháng 0,3

1 - 3 tuổi 0,5

4 - 6 tuổi 0,6

7 - 9 tuổi 0,9

Bảng 2.12: Nhu cầu Vitamin B1

Tất cả các loại thức ăn tự nhiên đều có chứa Vitamin B1 nhưng có nhiều

nhất ở gan, thận, tim, não, cám gạo, vỏ hạt đậu, enzim bia, lòng đỏ trứng, enzim

bánh mì.

2.2.5.4. Vitamin B2 (Riboflavin)

Vitamin B2 giữ vai trò chủ yếu trong các phản ứng oxi hóa ở tế bào trong

các mô của cơ thể.

Ngoài ra, Vitamin B2 còn có ảnh hưởng đến cấu trúc màng tế bào, tới

khả năng cảm thụ ánh sáng của mắt, tới một số tuyến nội tiết. Vitamin B2 góp

phần quan trọng trong việc tạo thành các liên kết sắt.

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Vitamin B2 đối với trẻ em

như sau:

Nhóm tuổi Nhu cầu Vitamin B2 khuyến nghị (mg/ngày)

< 6 tháng 0,3

6 - 11 tháng 0,4

1 - 3 tuổi 0,5

4 - 6 tuổi 0,6

7 - 9 tuổi 0,9

Bảng 2.13: Nhu cầu Vitamin B2

37

Vitamin B2 có nhiều trong cám gạo, nấm enzim, nhưng cũng có trong

nhiều thực phẩm khác như: thịt, đậu đỗ, cà chua, bắp cải, …

2.2.5.5. Vitamin PP (Niaxin)

Tất cả các tế bào sống đều cần đến Vitamin PP, chúng tham gia vào quá

trình chuyển hóa Gluxit và hô hấp của tế bào.

Theo khuyến nghị của Viện Dinh dưỡng (1996) nhu cầu Vitamin PP đối

với trẻ em như sau:

Nhóm tuổi Nhu cầu Vitamin PP khuyến nghị (mg/ngày)

3 - 6 tháng 5,0

6 - 12 tháng 5,4

1 - 3 tuổi 9,0

4 - 6 tuổi 12,1

Bảng 2.14: Nhu cầu Vitamin PP

Vitamin PP có cả trong các thực phẩm nguồn gốc động vật và thực vật.

Ở các thực phẩm nguồn gốc thực vật có nhiều trong men, cám gạo, mầm

lúa mì, riêng ngô lại nghèo Vitamin PP.

Ở các thực phẩm nguồn gốc động vật, trừ sữa và trứng, còn lại đều giàu

Vitamin PP.

2.2.5.6. Vitamin C (axit ascorbic)

Vitamin C hay còn gọi là axit ascorbic, kết thành tinh thể màu trắng, có

vị chua. Nó rất dễ bị oxi hóa. Toàn bộ cơ thể có từ 2 - 6g Vitamin C, phần lớn

ở các phủ tạng.

Theo khuyến nghị của Bộ Y tế (2014) nhu cầu Vitamin C đối với trẻ em

như sau:

38

Nhóm tuổi Nhu cầu Vitamin C khuyến nghị (mg/ngày)

< 6 tháng 25

6 - 11 tháng 30

1 - 3 tuổi 30

4 - 6 tuổi 30

7 - 9 tuổi 35

Bảng 2.15: Nhu cầu Vitamin C

Vitamin C có nhiều trong các quả chín. Rau xanh có nhiều Vitamin C

nhưng bị hao hụt nhiều trong quá trình nấu nướng. Khoai tây, khoai lang cũng

là nguồn Vitamin C tốt.

2.3. Xây dựng khẩu phần ăn

2.3.1. Khẩu phần là gì?

Khẩu phần là xuất ăn của 1 người trong 1 ngày nhằm đáp ứng nhu cầu

về năng lượng và các chất dinh dưỡng cần thiết cho cơ thể.

2.3.2. Chế độ ăn là gì?

Chế độ ăn cho mỗi đối tượng được biểu hiện bằng số bữa ăn trong 1

ngày. Sự phân phối các bữa ăn trong những giờ nhất định có chú ý đến khoảng

cách giữa các bữa ăn và phân phối cân đối tỉ lệ năng lượng giữa các bữa ăn

trong 1 ngày.

2.3.3. Thực đơn là gì?

Khẩu phần tính thành lượng thực phẩm, chế biến dưới dạng các món ăn,

sau khi sắp xếp thành bảng món ăn từng bữa, hàng ngày, hàng tuần gọi là thực

đơn.

2.3.4. Khẩu phần ăn phải đảm bảo cân đối và hợp lí

Thế nào là một khẩu phần ăn cân đối và hợp lí?

Cần đủ:

39

 Năng lượng;

 Chất dinh dưỡng (4 nhóm thực phẩm: P-L-G-Vitamin và Chất

khoáng).

Khi xây dựng khẩu phần ăn cần:

 Dựa vào tỉ lệ nào thì phải căn cứ vào thực trạng;

 Kinh phí cho một khẩu phần ăn là bao nhiêu?

 Mức ăn của trẻ;

 Nghiên cứu sâu vai trò của từng chất, cấu tạo, khả năng gây

bệnh ảnh hưởng đến sức khỏe, trí tuệ, tầm vóc, bệnh tật.

 Xây dựng thực đơn hàng ngày, theo tuần, theo mùa.

Theo thông tư số 28/2016/TT-BGDĐT và quyết định số 777/QĐ-

BGDĐT thì mức năng lượng cung cấp dinh dưỡng được quy định như sau:

 Đối với lứa tuổi nhà trẻ:

Nhu cầu khuyến nghị Nhóm tuổi Chế độ ăn năng lượng/ngày/trẻ

3 - 6 tháng Sữa mẹ 500 - 550kcal

6 - 12 tháng Sữa mẹ và sữa bột 600 - 700kcal

12 - 18 tháng Cháo và sữa mẹ

930 - 1000kcal 18 - 24 tháng Cơm nát và sữa mẹ

24 - 36 tháng Cơm thường

Bảng 2.16: Nhu cầu khuyến nghị năng lượng lứa tuổi nhà trẻ Tỉ lệ các chất cung cấp năng lượng được khuyến nghị theo cơ cấu:

 Protein cung cấp khoảng 13% - 20% năng lượng khẩu phần.

 Lipit cung cấp khoảng 30% - 40% năng lượng khẩu phần.

 Gluxit cung cấp khoảng 47% - 50% năng lượng khẩu phần.

40

 Nước uống: khoảng 0,8 - 1,6 lít/trẻ/ngày (kể cả nước trong thức

ăn).

 Đối với lứa tuổi mẫu giáo (4 - 6 tuổi)

Xây dựng khẩu phần phù hợp với độ tuổi.

Nhu cầu khuyến nghị năng lượng của 1 trẻ/ngày là: 1230 - 1320kcal.

Tỉ lệ các chất cung cấp năng lượng theo cơ cấu:

 Protein cung cấp khoảng 13% - 20% năng lượng khẩu phần.

 Lipit cung cấp khoảng 25% - 35% năng lượng khẩu phần.

 Gluxit cung cấp khoảng 52% - 60% năng lượng khẩu phần.

 Nước uống: khoảng 1,6 - 2,0 lít/trẻ/ngày (kể cả nước trong thức

ăn).

 Đối với người trưởng thành

Theo khuyến nghị của Viện Dinh dưỡng (2016), đối với người trưởng

thành tỉ lệ cung cấp năng lượng trong bữa ăn hàng ngày của các thành phần

Protein, Lipit, Gluxit nên đạt như sau:

P : L : G = 14% : 20% : 66%

Năng lượng sinh ra do phản ứng ôxi hóa của mỗi chất dinh dưỡng là:

- 1gam chất Protein cung cấp 4kcal;

- 1gam chất Lipit cung cấp 9kcal;

- 1gam chất Gluxit cung cấp 4kcal.

Năng lượng trong thực đơn chủ yếu (gần như toàn bộ) được cung cấp bởi

3 đại lượng Protein, Lipit, Gluxit. Do đó, ta có:

2.3.5. Các bước khi tiến hành xây dựng khẩu phần ăn

 Bước 1:

 Xác định số Kcal cho từng độ tuổi.

41

 Bước 2:

 Lựa chọn cách phân phối kcal thích hợp, theo tỉ lệ nào?

 Bước 3:

 Lên thực đơn dựa vào bảng thành phần thực phẩm cho 100g

thức ăn ăn được;

 Lựa chọn thực phẩm ngon nhất có thể ưu tiên những thực phẩm

sẵn có của địa phương;

 Bổ sung cho đạt năng lượng với dầu mỡ và đường.

2.3.6. Nguyên tắc xây dựng thực đơn

Thực đơn cần đảm bảo các chất dinh dưỡng: đủ 4 nhóm thực phẩm P, L,

G, Vitamin và Chất khoáng.

Cùng một loại thực phẩm phải sử dụng cho tất cả các chế độ ăn để tiện

cho công tác tiếp phẩm và việc tổ chức nấu ăn cho trẻ.

Thực đơn là những thực phẩm sẵn có của địa phương, phù hợp theo mùa:

vừa đảm bảo dinh dưỡng, vừa rẻ tiền, trẻ lại ăn ngon miệng, kinh tế.

Lên thực đơn tuần: phù hợp với việc sử dụng đủ loại thực phẩm và việc

bảo quản thực phẩm, việc chuẩn bị thực phẩm nấu cũng chủ động hơn.

Thực đơn cần thay đổi món ăn để trẻ khỏi chán.

2.4. Tổng quan về bệnh béo phì

2.4.1. Khái niệm bệnh béo phì

Béo phì là tình trạng tích lũy mỡ thái quá và không bình thường một cách

cục bộ hay toàn thể tới mức ảnh hưởng xấu tới sức khoẻ.

2.4.2. Phương pháp xác định béo phì

2.4.2.1. Dựa vào chỉ số BMI

Chỉ số khối cơ thể (BMI) là một phép tính toán học liên quan đến chiều

cao và cân nặng, không phân biệt lịch sử gia đình, giới tính, tuổi tác hay chủng

tộc. BMI được tính bằng cách chia trọng lượng cơ thể (tính bằng kilogam) của

42

một người với chiều cao của họ (tính bằng mét) hoặc bằng cách sử dụng pounds

(lbs) và inches (in). Tuy nhiên, BMI không đúng với vận động viên, phụ nữ

mang thai hoặc cho con bú.

BMI =

Tổng trọng lượng cơ thể Chiều cao × Chiều cao Chỉ số BMI chuẩn theo Tổ chức Y tế thế giới (World Health

Organization, WHO):

Chỉ số BMI Tình trạng

Thiếu cân 𝐵𝑀𝐼 ≤ 18,50

Bình thường 18,50 < 𝐵𝑀𝐼 ≤ 24,99

Thừa cân 24,99 < 𝐵𝑀𝐼 ≤ 25,00

Tiền béo phì 25,00 < 𝐵𝑀𝐼 ≤ 29,99

Béo phì độ I 29,99 < 𝐵𝑀𝐼 ≤ 34,99

Béo phì độ II 34,99 < 𝐵𝑀𝐼 < 40,00

Béo phì độ III 𝐵𝑀𝐼 ≥ 40,00

Bảng 2.17: Bảng chỉ số BMI chuẩn theo WHO

2.4.2.2. Dựa vào Chu vi vòng eo

Vòng eo là một phép đo khác được sử dụng rộng rãi để xác định hàm

lượng chất béo trong bụng. Sự dư thừa mỡ bụng so với tổng lượng mỡ của cơ

thể được coi là yếu tố tiên đoán đến nguy cơ liên quan đến béo phì. Những

người đàn ông có vòng eo vượt quá 40 inch sẽ bị xem là có nguy cơ. Phụ nữ có

nguy cơ với một vòng eo từ 35 inch trở lên.

2.4.3. Thực trạng béo phì

2.4.3.1. Thực trạng béo phì trên thế giới

Theo nghiên cứu vừa được đăng tải trên tạp chí y khoa New England

Journal of Medicine, hơn 2 tỉ người, tương đương với gần một phần ba dân số

43

thế giới đang thừa cân, béo phì do ảnh hưởng của quá trình đô thị hóa, chế độ

ăn không hợp lí và ít hoạt động thể chất.

Các nhà nghiên cứu đã phân tích dữ liệu từ 195 quốc gia trong khoảng

từ năm 1980 đến năm 2015 để tìm hiểu xu hướng của tình trạng thừa cân và

béo phì.

Dữ liệu cho thấy số người bị béo phì đã tăng gấp đôi kể từ năm 1980 tại

73 quốc gia và tiếp tục tăng ở hầu hết các quốc gia còn lại.

Mức béo phì ở phụ nữ cao hơn so với nam giới ở mọi lứa tuổi.

Trong số 195 nước và vùng lãnh thổ được đưa vào nghiên cứu, Mỹ có tỷ

lệ trẻ em và thanh thiếu niên béo phì lớn nhất với 13%, trong khi Ai Cập dẫn

đầu về tình trạng béo phì ở người trưởng thành với gần 35%.

Về số lượng, do có dân số đông nên Trung Quốc và Ấn Độ có số trẻ em

bị béo phì cao nhất, lần lượt là 15,3 triệu và 14,4 triệu trẻ.

2.4.3.2. Thực trạng béo phì ở Việt Nam

Kết quả điều tra mới nhất (2014 - 2015) về tình trạng trẻ thừa cân béo

phì được TS. Bùi Thị Nhung, Trưởng khoa Dinh dưỡng học đường và ngành

nghề, Viện Dinh dưỡng Quốc gia, công bố tại hội thảo phòng chống béo phì,

thừa cân cho trẻ em, ngày 18/10.

Tình trạng béo phì trẻ em từ tuổi tiền học đường và học đường đến tuổi

trưởng thành đang gia tăng tại Việt Nam, đặc biệt ở các thành phố lớn. Từ năm

1980 - 2013, tỉ lệ thừa cân, béo phì tăng hơn 27% ở người lớn và tăng đến 47%

ở trẻ em. Năm 1996 tỉ lệ trẻ em thừa cân, béo phì tại Hà Nội và TP HCM là

12%. 13 năm sau (năm 2009) tỉ lệ này 43%. Kết quả điều tra năm 2014 - 2015,

tỉ lệ trẻ béo phì ở TP HCM trên 50%, còn khu vực nội thành Hà Nội khoảng

41%.

44

Chỉ tính riêng TP HCM, tỉ lệ thừa cân, béo phì ở trẻ dưới 5 tuổi tăng gấp

3 lần trong hơn 10 năm qua. Tỉ lệ thừa cân, béo phì ở học sinh phổ thông cũng

tăng gấp đôi, từ gần 12% (năm 2002) lên 22% (năm 2009) [6].

2.4.4. Những yếu tố, nguy cơ của béo phì ở trẻ em

2.4.4.1. Cơ chế bệnh sinh của béo phì

Cơ thể giữ được cân nặng ổn định là nhờ trạng thái cân bằng giữa năng

lượng do thức ăn cung cấp và năng lượng tiêu hao do lao động và các hoạt động

khác của cơ thể. Cân nặng cơ thể tăng lên có thể do chế độ ăn dư thừa vượt quá

nhu cầu hoặc do nếp sống làm việc tĩnh tại ít tiêu hao năng lượng.

Người ta nhận thấy 60% - 80% trường hợp béo phì là do nguyên nhân

dinh dưỡng, bên cạnh đó còn có thể do các rối loạn chuyển hóa trong cơ thể

thông qua vai trò điều tiết của hệ thống thần kinh và các tuyến nội tiết như tuyến

yên, tuyến thượng thận, tuyến giáp trạng và tuyến tụy. Khi vào cơ thể, các chất

Protein, Lipit, Gluxit đều có thể chuyển hóa thành chất béo dự trữ. Vì vậy không

nên coi ăn nhiều thịt, nhiều mỡ mới gây béo mà ăn quá thừa chất bột, đường,

đồ ngọt đều có thể gây béo.

Các hành vi ăn uống có liên quan tới thừa cân và béo phì bao gồm tần

suất ăn, khẩu phần ăn quá dư thừa, ăn uống nhậu nhẹt, ăn thức ăn nhanh ở bên

ngoài. Các yếu tố chất dinh dưỡng được nghiên cứu bao gồm chất béo, các loại

carbohydrat (bao gồm các loại carbohydrat tinh chế như đường), chỉ số đường

huyết của thực phẩm và chất xơ.

2.4.4.2. Yếu tố di truyền

Hiện tại khoảng một nửa đến 1/3 nguy cơ thừa cân của một cá nhân có

thể được giải thích bằng yếu tố di truyền.

Những nghiên cứu gần đây trên những người sinh đôi, sinh ba hay trên

con nuôi của một số gia đình cho thấy di truyền là một yếu tố rất quan trọng

45

gây ra béo phì. Sự tham dự về phần di truyền của bệnh tương ứng với sự di

truyền đa gen, có nghĩa là có nhiều gen cùng tham gia.

2.4.4.3. Khẩu phần và thói quen ăn uống của trẻ béo phì

Đáng ngạc nhiên là mối quan hệ giữa chế độ ăn uống và béo phì ở trẻ em

ở lứa tuổi mẫu giáo rất ít nghiên cứu, nhưng dường như có sự tương tác giữa

sự thèm ăn, thành phần dinh dưỡng, chế độ ăn, thành phần bữa ăn và ảnh hưởng

của bố mẹ. Nghiên cứu về các yếu tố dinh dưỡng của bệnh béo phì ở trường

mầm non đã tập trung vào vai trò của lượng tiêu thụ năng lượng tổng thể hoặc

sự đóng góp của các chất dinh dưỡng đa lượng.

Các báo cáo từ các nghiên cứu điều tra sự liên quan giữa lượng năng

lượng hấp thu và béo phì ở trẻ mầm non thể hiện nhiều mâu thuẫn. Hai nghiên

cứu đã phát hiện ra rằng năng lượng hấp thu cao có liên quan đến việc gia tăng

nguy cơ béo phì, trong khi đáng ngạc nhiên là một thử nghiệm đối chứng ngẫu

nhiên cho thấy rằng năng lượng hấp thu thấp hơn trong những năm trước tuổi

đi học có liên quan đến gia tăng nguy cơ béo phì sau này. Sự khác biệt này có

thể gây ra những khó khăn trong việc đánh giá lượng năng lượng hấp thu.

Một số nghiên cứu đã điều tra mối liên hệ giữa lượng chất dinh dưỡng

đa lượng và sự phát triển của chứng béo phì ở trẻ mẫu giáo. Bằng chứng chỉ ra

sự liên hệ chặt chẽ giữa lượng Protein hấp thu và nguy cơ béo phì. Ví dụ, một

nghiên cứu đã chỉ ra rằng lượng chất đạm hấp thu cao hơn trong những năm

mẫu giáo gây tăng gấp đôi nguy cơ bị thừa cân. Lượng Protein hấp thu cao hơn

cũng liên quan đến độ tuổi dễ mắc béo phì thấp, đó là thời điểm mà BMI bắt

đầu tăng lên sau khi đạt đến điểm cực tiểu ở độ tuổi ấu thơ (thường là từ 4 đến

8 tuổi), nó có liên quan với tăng nguy cơ béo phì sau này.

Mặc dù có dữ liệu chứng minh giả thuyết rằng lượng chất đạm cao trong

thời kì sơ sinh và thời thơ ấu làm tăng xu hướng béo phì. Nhưng nhìn chung,

46

bằng chứng chỉ ra vai trò của chế độ ăn uống đơn thuần trong sự phát triển của

bệnh béo phì ở trường mầm non còn hạn chế.

2.4.4.4. Hoạt động thể chất của trẻ béo phì

Bằng chứng cho thấy rằng tăng hoạt động thể chất làm giảm nguy cơ béo

phì ở trẻ mầm non. Một nghiên cứu cắt ngang cho thấy trẻ em có hoạt động thể

chất thấp hơn có nguy cơ dư thừa mỡ trong cơ thể gấp 4 lần. Sự ảnh hưởng của

hoạt động thể chất lên bệnh béo phì có thể rất đáng kể. Ví dụ, ở Thái Lan, có

báo cáo cho rằng trẻ em mầm non có mức hoạt động thể chất thấp có nguy cơ

béo phì tăng gấp 2 lần so với trẻ em có mức hoạt động thể chất bình thường.

Cường độ hoạt động thể chất có thể đặc biệt quan trọng trong việc ảnh

hưởng đến nguy cơ béo phì. Ví dụ, một nghiên cứu đã chỉ ra rằng trẻ em thừa

cân dành ít hơn 9 phút trong hoạt động thể chất mạnh hàng ngày so với trẻ bình

thường. Do đó, chỉ cần sự khác biệt nhỏ trong hoạt động thể chất cũng có thể

ảnh hưởng tới sự phát triển của bệnh béo phì.

Mặc dù sự ảnh hưởng của hoạt động thể chất tới bệnh béo phì ở trẻ mầm

non là rõ ràng. Tuy nhiên, hầu hết trẻ em ở lứa tuổi mẫu giáo không đạt được

đề nghị 60 phút hoạt động thể lực vừa phải hàng ngày.

2.4.4.5. Một số nguyên nhân khác

Gần đây, các yếu tố phát triển trong thời kì đầu như dinh dưỡng và mô

hình tăng trưởng sớm đã cho thấy ảnh hưởng đến nguy cơ béo phì sau này. Ví

dụ, tăng trưởng nhanh trong thời kì sơ sinh có liên quan mật thiết đến nguy cơ

béo phì. Ví dụ, khẩu phần Protein hấp thu trong thời kì đầu của trẻ uống sữa

hộp đã được báo cáo là lớn hơn 70% so với của trẻ bú sữa mẹ, điều này có thể

làm tăng tỉ lệ tăng trưởng của trẻ sơ sinh và do đó tăng nguy cơ béo phì sau

này. Bằng chứng ủng hộ giả thuyết này xuất phát từ một thử nghiệm lớn với

hơn 1000 trẻ sơ sinh, trong đó trẻ sơ sinh được phân ngẫu nhiên vào chế độ ăn

47

Protein cao hơn trong năm đầu tiên, kết quả cho thấy có sự tăng trọng lượng ở

thời kì sơ sinh và BMI ở trẻ lớn hơn 2 tuổi.

Cơ chế tác động của dinh dưỡng và sự phát triển của trẻ sơ sinh đối với

sự phát triển của chứng béo phì còn chưa được hiểu rõ. Tuy nhiên, các nghiên

cứu trên động vật cho thấy hệ nội tiết cân bằng năng lượng phát triển trong thời

kì sau sinh có thể được kiểm soát bởi hoạt động của các hooc môn như insulin

và leptin trên hệ thần kinh trung ương. Các yếu tố môi trường bao gồm dinh

dưỡng tác động sự thèm ăn do đó có thể ảnh hưởng đến sự phát triển nguy cơ

béo phì. Ví dụ, ở chuột bị hạn chế tăng trưởng do thiếu dinh dưỡng trong tử

cung và sau khi cho ăn quá mức sau sinh dẫn đến tăng cân và béo phì trong tuổi

trưởng thành.

Vai trò của các yếu tố dinh dưỡng phát triển trong thời kì sơ sinh chủ yếu

dựa vào sữa. Tuy nhiên, giai đoạn tuổi mẫu giáo là thời điểm quan trọng mà

thói quen ăn uống được hình thành, với những ảnh hưởng tiềm ẩn suốt đời liên

quan tới béo phì. Chẳng hạn, sự thèm ăn ở trẻ mầm non ảnh hưởng mạnh đến

độ béo phì sau đó. Việc hình thành sở thích về một loại thực phẩm nào đó và

tiêu thụ nhiều loại thực phẩm giàu năng lượng có thể ảnh hưởng đến sự phát

triển của chứng béo phì.

Lựa chọn thực phẩm là yếu tố quyết định chủ đạo trong sự đa dạng khẩu

phần ăn. Cả sở thích và sự đa dạng thực phẩm đều bắt đầu từ những năm đầu

đời và do đó các thói quen ăn uống hình thành trong thời thơ ấu có xu hướng

kéo dài suốt cuộc đời. Ngày nay sự đa dạng hơn về lựa chọn thực phẩm dinh

dưỡng có liên quan đến việc tăng năng lượng hấp thu và nguy cơ béo phì ở một

số nhưng không phải ở tất cả các nghiên cứu, có thể sự hấp thu các thực phẩm

giàu năng lượng ở mỗi người là khác nhau.

2.4.5. Hậu quả của béo phì

2.4.5.1. Ảnh hưởng đến sức khỏe

48

Thừa cân và béo phì đang là mối đe dọa nghiêm trọng tới sức khỏe con

người. Trọng lượng dư thừa ở bất kỳ lứa tuổi nào đều không tốt cho sức khoẻ.

Nhiều nghiên cứu cho thấy có sự tiến triển trực tiếp từ một trẻ béo tới một người

lớn béo. Người ta nhận thấy 50% phụ nữ trưởng thành mắc béo phì ở tuổi thanh

thiếu niên, 30% người lớn đã béo trong suốt thời kỳ trẻ em, 80% thanh thiếu

niên sẽ tiếp tục béo khi trưởng thành và mức độ béo càng nghiêm trọng ở trẻ

thì béo càng dai dẳng ở tuổi trưởng thành. Do sự gia tăng các nguy cơ bệnh lý

cộng với các yếu tố xã hội, người béo phì trung bình sẽ giảm 6 - 10 năm tuổi

thọ.

STT Các hậu quả thường gặp Các hậu quả ít gặp

Tăng trưởng sớm: tăng chiều cao, 1 Tăng huyết áp dậy thì sớm

2 Rối loạn tâm thần Già u não

3 Tăng Lipit máu Đái tháo đường

4 Không dung nạp Glucose Ngừng thở khi ngủ

5 Gan thoái hóa mỡ và sỏi mật Bệnh buồng trứng đa nang

Bảng 2.18: Hậu quả của béo phì

2.4.5.2. Tăng nguy cơ mắc bệnh tử vong

Theo Trung tâm kiểm soát và phòng ngừa dịch bệnh Hoa Kì (Centers for

Disease Control and Prevention, CDC) ước tính 112.000 trường hợp tử vong

mỗi năm có liên quan đến chứng béo phì. Béo phì làm cho người bệnh có nguy

cơ mắc hơn 30 bệnh mãn tính khác. Các bệnh này bao gồm: tiểu đường tuýp 2,

cholesterol cao, cao huyết áp, sỏi mật, bệnh tim, bệnh gan nhiễm mỡ, ngưng

thở khi ngủ, trào ngược dạ dày thực quản, không kiềm chế stress, suy tim, bệnh

thoái hóa khớp, dị tật bẩm sinh, sẩy thai, hen suyễn và các bệnh hô hấp khác.

2.4.5.3. Hậu quả kinh tế và xã hội của béo phì

49

Chi phí chăm sóc sức khoẻ của người Mĩ bị béo phì lên tới khoảng 147

nghìn tỉ USD mỗi năm và con số này đã tăng lên đáng kể trong những năm sau.

Viện nghiên cứu toàn cầu McKinsey công bố con số của Vương Quốc Anh là

1,3 nghìn tỉ bảng, tương đương khoảng 2,8% tăng trưởng kinh tế hàng năm,

làm thâm hụt ngang 47 tỉ bảng lợi nhuận kinh tế quốc gia.

2.4.6. Giải pháp phòng chống béo phì ở trẻ em

2.4.6.1. Về chế độ ăn của trẻ

Việc xây dựng chế độ ăn hợp lí cho trẻ là cần thiết. Tuy nhiên không phải

nhằm mục đích cắt giảm số năng lượng được cung cấp đến mức tối đa để đạt

mục tiêu giảm cân trong điều trị béo phì, vì một nguyên tắc quan trọng trong

điều trị béo phì ở trẻ em là không đặt mục tiêu giảm cân mà chỉ làm giảm tốc

độ tăng cân. Thực chất trẻ vẫn phải ăn chế độ phù hợp với nhu cầu sinh lí của

trẻ hoặc chỉ phải giảm chút ít, đặc biệt vẫn phải đảm bảo nhu cầu đạm và Canxi

của trẻ (sữa, thịt, cá, trứng, ..).

Quá trình giảm cân cần phải khoa học, giảm từ từ, giúp cơ thể dễ thích

nghi cũng như đạt hiệu quả giảm cân bền vững. Hãy đặt mục tiêu giảm cân 1 -

2 kg mỗi tháng là hợp lí. Muốn vậy, cần phải kiên trì, duy trì chế độ dinh dưỡng

vận động hợp lý trong suốt quá trình giảm cân cũng như sau khi đã đưa cân

nặng về mức lý tưởng.

Để giảm cân, giảm lượng mỡ thừa cần chế độ ăn uống và hoạt động thể

lực hợp lí. Cụ thể, cần có chế độ ăn thấp năng lượng, cân đối, ít đường, đủ đạm,

Vitamin, nhiều rau quả. Từng bước giảm năng lượng trong từng khẩu phần ăn,

mỗi tuần giảm khoảng 300kcal/ngày so với khẩu phần trước đó, cho đến khi

đạt năng lượng tương ứng đến mức BMI. Chẳng hạn [9]:

- BMI từ 23,00 - 24,99: Năng lượng đưa vào một ngày là 1500kcal.

- BMI từ 25,00 - 29,99: Năng lượng đưa vào một ngày là 1200kcal.

- BMI từ 30,00 - 39,99: Năng lượng đưa vào một ngày là 1000kcal.

50

- BMI ≥ 40,00: Năng lượng đưa vào một ngày là 800kcal.

2.4.6.2. Về chế độ vận động của trẻ

- Điều chỉnh chế độ sinh hoạt phù hợp, không thức khuya, dậy muộn.

- Tăng cường hoạt động thể lực, tập thể dục mỗi ngày nhằm mục đích

tiêu hao năng lượng dự trữ dưới dạng mô mỡ, tăng khối cơ bắp và khối xương

qua đó giảm các vùng lỏng lẻo của cơ thể, hạn chế khu vực phát triển của các

tế bào mỡ.

- Hạn chế thời gian trẻ ngồi xem tivi, trò chơi điện tử dưới 1 giờ/ngày.

- Không nên bắt trẻ học quá nhiều, tạo điều kiện để trẻ được vui đùa,

chạy nhảy sau những giờ học căng thẳng.

- Khuyến khích trẻ tham gia các trò chơi vận động phù hợp với lứa tuổi

như: đá bóng, chơi cầu lông, bơi lội, nhảy dây, đá cầu… hướng dẫn trẻ tìm được

môn thể thao ưa thích sẽ giúp trẻ hứng thú hơn.

- Khuyến khích trẻ tham gia giúp cha mẹ một số công việc nhà như: quét

dọn, rửa chén bát, thu dọn đồ chơi, chăm sóc em nhỏ…

- Khuyến khích trẻ đi bộ đến lớp nếu ở gần trường học, không dùng cầu

thang máy mà đi cầu thang bộ.

51

CHƯƠNG 3

CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ

3.1. Phân tích, thiết kế

Theo tài liệu [1], [2], [5] và [10] cho thấy việc ứng dụng các phương

pháp Sử dụng mô hình suy diễn; kĩ thuật Trí tuệ nhân tạo (AI); Giải thuật di

truyền (GA) hay Mạng Neural hiện tại đã giải quyết được một số vấn đề

chính:

- Các bữa ăn đã được sắp xếp và hợp lí về giá thành, không có món kị

nhau trong một bữa ăn.

- Hệ thống có thể đưa ra lịch thực đơn cho các khoảng thời gian khác

nhau mà vẫn đảm bảo được tỉ lệ dinh dưỡng và năng lượng.

Trong phạm vi của nghiên cứu này chúng tôi sử dụng kết hợp phương

pháp tìm kiếm cổ điển và giải thuật di truyền. Các bước thực hiện được mô tả

như sau:

Input: Chiều cao; Cân nặng; Tuổi; Giới tính.

Output: Thực đơn và tỉ lệ các thành phần dinh dưỡng trong thực đơn.

Alg:

- Bước 1: Tính BMI [4].

- Bước 2: Xác định số Kcal tương ứng với BMI.

- Bước 3: Xác định phân phối tỉ lệ P, L, G dựa vào độ tuổi.

- Bước 4: Dựa vào tỉ lệ phân phối xác định lượng P, L, G tương ứng.

- Bước 5: Dựa vào bảng CSDL [3] tính toán và lên thực đơn sao cho

tương ứng với lượng P, L, G vừa tính được trước đó.

- Bước 6: Xuất thực đơn theo từng lựa chọn của hệ thống.

3.2. Mô hình toán học của bài toán

 Yêu cầu của bài toán

52

Cần xây dựng hệ hỗ trợ xác định thực đơn khẩu phần dinh dưỡng với yêu

cầu đảm bảo dinh dưỡng theo quy định, không béo phì và chi phí cho 1 khẩu

phần ăn là rẻ nhất.

 Dữ liệu đầu vào của bài toán

Kí hiệu:

- Các loại thực phẩm:

- Lượng nguyên liệu trong 1 đơn vị thực phẩm là:

Khi đó: thực đơn được xác định bởi công thức:

Trong đó:

 Các ràng buộc cơ bản

 Đối với thực phẩm nguyên liệu :

- Giá thị trường là:

- Hàm lượng các chất dinh dưỡng trong 1 loại thực phẩm:

+ Hàm lượng Protein:

+ Hàm lượng Lipit:

+ Hàm lượng Gluxit:

 Đối với thực đơn :

- Hàm lượng các chất dinh dưỡng trong 1 thực đơn:

+ Hàm lượng Protein:

+ Hàm lượng Lipit:

+ Hàm lượng Gluxit:

53

Tổng số Kcal trong 1 thực đơn được xác định như sau:

 Điều kiện

- Đảm bảo đầy đủ các chất dinh dưỡng (nhóm đại lượng: P, L, G).

- Hàm lượng Kcal tương ứng với chỉ số BMI.

- Không béo phì.

- Giá thành cho 1 khẩu phần ăn là rẻ nhất.

 Mô hình hóa:

 Hàm mục tiêu:

Đối với bài toán trên chúng ta có thể sử dụng giải thuật di truyền GA để

xác định nghiệm tối ưu.

Để thực hiện giải thuật di truyền GA đối với bài toán này, chúng ta sử

dụng việc mã hóa bằng cách mỗi zen được mô tả bằng một vecto

trong đó:

là tỉ lệ phần trăm của lượng Protein trong 1 đơn vị thức ăn.

là tỉ lệ phần trăm của lượng Lipit trong 1 đơn vị thức ăn.

là tỉ lệ phần trăm của lượng Gluxit trong 1 đơn vị thức ăn.

Điều kiện cần thỏa mãn trong quá trình sinh sản và lai ghép là:

Hiển nhiên nếu sử dụng phương pháp lai ghép số học

54

𝒁𝒆𝒏_𝒄𝒐𝒏 = 𝒓 × 𝒁𝒆𝒏_𝒃ố + (𝟏 − 𝒓) × 𝒁𝒆𝒏_𝒎ẹ, 𝟎 < 𝒓 < 𝟏

thì toán tử lai ghép là hoàn toàn hợp lệ.

Trong thuật toán, ta sử dụng phương pháp trọng số để xác định hàm mục

tiêu. Khi đó cần xác định để

Thuật toán GA được thực hiện như sau:

Bước 1: Đọc dữ liệu đầu vào

- Giá thị trường của từng loại nguyên liệu.

- Tiêu chuẩn dinh dưỡng trong 100g thức ăn.

- Tỉ lệ các chất dinh dưỡng của các nguyên liệu.

Bước 2:

- Khởi tạo số lượng cá thể.

- Khởi tạo quần thể.

Bước 3: (bước lặp)

Lai ghép: sử dụng phương pháp lai ghép

Trong đó: là hai cá thể bố và mẹ.

là cá thể con được sinh ra.

tham số lựa chọn ngẫu nhiên theo mỗi bước lặp.

Bước 4: Chọn lọc

Sử dụng chọn các cá thể đảm bảo hàm mục tiêu đạt giá trị nhỏ nhất theo

nguyên tắc:

- Với mỗi cá thể xác định giá trị hàm mục tiêu.

- Sắp xếp các hàm mục tiêu theo thứ tự tăng dần.

- Chọn cá thể đầu tiên theo thứ tự sắp xếp.

Bước 5: Đột biến

Chọn một số cá thể cho đột biến theo xác suất đột biến

Bước 6: Kiểm tra điều kiện dừng.

Thuật toán sẽ dừng khi thu được nghiệm gần tối ưu của bài toán.

55

3.3. Xác định BMI [4]

Công thức tính chỉ số BMI chung bao gồm cả người lớn và trẻ em:

BMI =

Tổng trọng lượng cơ thể Chiều cao × Chiều cao Tuy nhiên thì ở trẻ em sẽ hơi khác một chút đó là thay vì để tính ngưỡng

thiếu cân hay thừa cân thì các nhóm chỉ số BMI của trẻ em cho phép so sánh

các trẻ em cùng tuổi và cùng giới tính với nhau. Đối với trẻ em thì chúng ta chỉ

tính từ dưới 18 tuổi, chỉ số BMI từ 85th đến 95th được xem là bị thừa cân.

Hình 3.1: Chỉ số BMI cho trẻ em

56

3.4. Xác định năng lượng đưa vào/ngày

Dựa vào công thức tính chỉ số BMI các nhà khoa học đã nghiên cứu bảng

chỉ số BMI chuẩn của người châu Á, từ đó đề xuất phương án định lượng năng

lượng đưa vào/ngày tương ứng với các chỉ số BMI khác nhau.

Năng lượng đưa Chỉ số BMI Tình trạng vào/ngày

Tính dựa vào công thức Thiếu cân 𝐵𝑀𝐼 ≤ 18,50

tính chuyển hóa năng 18,50 < 𝐵𝑀𝐼 ≤ 22,99 Bình thường

lượng cơ bản và Hệ số nhu

cầu năng lượng theo tính 22,99 < 𝐵𝑀𝐼 ≤ 23,00 Thừa cân

chất lao động

1500 Kcal/ngày 23,00 < 𝐵𝑀𝐼 ≤ 24,99 Tiền béo phì

1200 Kcal/ngày 24,99 < 𝐵𝑀𝐼 ≤ 29,99 Béo phì độ I

1000 Kcal/ngày 29,99 < 𝐵𝑀𝐼 < 40,00 Béo phì độ II

Béo phì độ III 800 Kcal/ngày 𝐵𝑀𝐼 ≥ 40,00

3.5. Xây dựng cơ sở dữ liệu thực phẩm dinh dưỡng

- Bảng Thực phẩm (Thucpham)

57

- Bảng Thực đơn (ThucDon)

- Bảng Chuyển hóa cơ bản (ChuyenHoaCoBan)

- Bảng dinh dưỡng chi tiết (DinhDuongCanThiet)

58

- Bảng Chỉ số BMI (ChiSoBMI)

- Sơ đồ quan hệ

3.6. Kết quả cài đặt

Chương trình thử nghiệm được viết trên C#, kết hợp với Hệ quản trị Cơ

sở dữ liệu SQL Server 2014; với 258 loại thực phầm khác nhau phù hợp cho

trẻ. Menu chính gồm:

- Hệ thống

- Danh mục

- Chức năng

59

- Giao diện chính của chương trình

Hình 3.2: Giao diện chính của chương trình

- Giao diện của Module quản lí nguồn thực phẩm

Hình 3.3: Giao diện của Module Thực phẩm

60

- Giao diện của Module xác định chỉ số BMI

Hình 3.4: Giao diện của Module Chỉ số BMI - Giao diện của Module quản lí năng lượng chuyển hóa cơ bản

Hình 3.5: Giao diện của Module Chuyển hóa cơ bản

61

- Giao diện của Module lên thực đơn

Hình 3.6: Giao diện của Module Thực đơn

62

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Kết quả đạt được:

- Tác giả đã tìm hiểu hệ thống khẩu phần dinh dưỡng của trẻ em, xác

định nguy cơ và cách phòng chống béo phì ở trẻ, từ đó mô hình hóa được bài

toán, thiết kế được chương trình hỗ trợ cho việc lên thực đơn dinh dưỡng.

- Hoàn thành các chức năng cơ bản của hệ thống hỗ trợ xác định khẩu

phần dinh dưỡng.

- Thiết kế giao diện chương trình thân thiện với người sử dụng, dễ dàng

nâng cấp và bảo trì.

- Dữ liệu ứng dụng luôn được bảo toàn, không mất mát.

Hạn chế:

- Ứng dụng chỉ có thể chạy trên nền tảng Windows có cài đặt phần mềm

Hệ quản trị Cơ sở dữ liệu SQL Server.

- Chưa thực nghiệm được trên nhiều đối tượng khác nhau.

Hướng phát triển:

- Khắc phục được những hạn chế của ứng dụng.

- Từ mô hình này có thể phát triển xây dựng chế độ khẩu phần dinh

dưỡng không những cho trẻ em mà cho cả người lớn, người bệnh, người ăn

chay, …

63

TÀI LIỆU THAM KHẢO

Tài liệu tiếng Việt

[1] Bảng nhu cầu dinh dưỡng khuyến nghị cho người Việt Nam (2014), Bộ

Y tế,

http://asiacert.vn/pic/filelibrary/43-2014-p_635685927854191144.pdf

[2] Bảng thành phần thực phẩm Việt Nam (2007), Bộ Y tế,

http://www.fao.org/fileadmin/templates/food_composition/documents/

pdf/VTN_FCT_2007.pdf

[3] Hướng dẫn xây dựng khẩu phần ăn,

http://www.cdsonla.edu.vn/spthmn/

attachments/article/97/Cach%20tinh%20khau%20phan%20an.doc

[4] http://timthuocnhanh.com/cong-cu-suc-khoe/cong-thuc-tinh-chi-so-

bmi.html, Truy xuất 15/04/2018.

[5] Lê Thị Mai Hoa (2015), Giáo trình dinh dưỡng trẻ em tuổi nhà trẻ và

mẫu giáo, Nxb Đại học Sư phạm, Hà Nội.

[6] Nguyễn Thị Bạch Kim (2008), Các Phương pháp Tối ưu Lý thuyết và

Thuật toán, Nxb Bách Khoa, Hà Nội.

[7] Phạm Thị Xuân Viên, Đặng Trần Vũ, Bùi Thanh Xuân (2006), Xây

dựng chế độ dinh dưỡng tại trường mầm non bằng logic mờ kết hợp

mạng Neural và máy học, Đại học Khoa học Tự nhiên - Đại học Quốc

gia TP. Hồ Chí Minh.

[8] Phương Trang (2017), Trẻ em Việt Nam ngày càng béo phì, VnExpress,

https://suckhoe.vnexpress.net/tin-tuc/suc-khoe/tre-em-viet-nam-ngay-

cang-beo-phi-3657777.html, 19/10/2017

[9] PGS. Bùi Thế Tâm, GS. Trần Vũ Thiệu (1998), Các phương pháp tối

ưu hóa, Nxb Giao thông vận tải, Hà Nội.

64

[10] PGS. TS. Nguyễn Hải Thanh (2006), Tối ưu hóa, Nxb Bách Khoa, Hà

Nội.

[11] Trần Thị Xuân Ngọc (2012), Thực trạng và hiệu quả can thiệp thừa

cân, béo phì của mô hình truyền thông giáo dục dinh dưỡng ở trẻ em từ

6 đến 14 tuổi tại Hà Nội, Viện Dinh dưỡng, Hà Nội.

[12] Trẻ em béo phì - Một vấn đề đang gia tăng, Potatoes Goodness,

http://www.potatoesusa-vietnam.com/sites/default/files/resources/pdf/

Childhood-Obesity_2_adapted.pdf

[13] Thi Ngoan (2015), Chế độ ăn giảm cân phù hợp chỉ số BMI, VnExpress,

https://suckhoe.vnexpress.net/tin-tuc/dinh-duong/thuc-don/ che-do-an-

giam-can-phu-hop-chi-so-bmi-3268100.html, 25/8/2015

[14] Phạm Thế Bảo, Xây dựng chế độ dinh dưỡng tại trường mầm non bằng

Logic mờ kết hợp mạng Neurol và máy học, Luận văn thạc sỹ, Khoa

toán tin, trường Đại học Quốc gia TP. Hồ Chí Minh, 07/2006.

Tài liệu tiếng Anh

[15] Birch et al. (2007), “Influences on the Development of Children's

Eating Behaviours: From Infancy to Adolescence”, National Institutes

of Health, 68(1), s1–s56.

[16] Dehghan et al. (2005), “Childhood obesity, prevalence and prevention”,

Nutrition Journal, doi:10.1186/1475-2891-4-24.

[17] Dana Wilkinson, MSc, Linda McCargar, PhD (2008), “Prevention of

Overweight and Obesity in Young Canadian Children”, Canadian

Council of Food and Nutrition.

[18] Julie Lanigan, Sally Barber and Atul Singhal (2010), “Prevention of

obesity in preschool children”, Nutrition Society, 69, 204–210.

[19] Sarah E. Barlow, MD, MPH, William H. Dietz, MD, PhD (1998),

“Obesity Evaluation and Treatment: Expert Committee

65

Recommendations”, American Academy of Pediatrics, VOLUME 102

/ ISSUE 3.

PHỤ LỤC

Mã nguồn của một số Module quan trọng

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Linq; using System.Threading.Tasks; using System.Windows.Forms; using DevExpress.XtraEditors; using Foods.BussinessLogicLayer; using DevExpress.XtraTreeList.Nodes; using Foods.Entity; using Foods.Utilities; using DevExpress.XtraEditors.Controls; namespace Foods { public partial class FrmThucDon : DevExpress.XtraEditors.XtraForm { private readonly KhoiLopBUS _khoiBUS; private readonly LopHocBUS _lopBUS; private readonly NamHocBUS _namHocBUS; private readonly HocSinhBUS _hocSinhBUS; private readonly DinhDuongCanThietBUS _dinhDuongBUS; private readonly ThucPhamBUS _thucPhamBUS; private readonly ThucDonBUS _thucDonBUS; private readonly ChiSoBMIBUS _chiSoBUS; decimal Protein, Gluxit, Lipit, KcalNgay; Random rd; DataTable dt; public FrmThucDon() { InitializeComponent(); _khoiBUS = new KhoiLopBUS(); _lopBUS = new LopHocBUS(); _namHocBUS = new NamHocBUS(); _hocSinhBUS = new HocSinhBUS(); _dinhDuongBUS = new DinhDuongCanThietBUS(); _thucPhamBUS = new ThucPhamBUS(); _thucDonBUS = new ThucDonBUS(); _chiSoBUS = new ChiSoBMIBUS(); rd = new Random(); } private void FrmThucDon_Load(object sender, EventArgs e)

1. Form Thực đơn

{ GridUtil.SetDataSource(gridLookUpNamHoc, _namHocBUS.LayDTNamHoc(), "MaNamHoc", "TenNamHoc", 0); treeListLopHoc.ParentFieldName = "MaKhoi"; treeListLopHoc.PreviewFieldName = "TenKhoi"; treeListLopHoc.DataSource = _khoiBUS.Lay_DT_Khoi(); CapNhatListLop(); repositoryItemGridLookUpEdit1.DataSource = _thucPhamBUS.LayDT_DanhSach(); repositoryItemGridLookUpEdit2.DataSource = _thucPhamBUS.LayDT_DanhSach(); repositoryItemGridLookUpEdit3.DataSource = _thucPhamBUS.LayDT_DanhSach(); repositoryItemGridLookUpEdit4.DataSource = _thucPhamBUS.LayDT_DanhSach(); repositoryItemGridLookUpEdit5.DataSource = _thucPhamBUS.LayDT_DanhSach(); } private void CapNhatListLop() { // Duyệt từng khối foreach (TreeListNode item in treeListLopHoc.Nodes) { item.Nodes.Clear(); IEnumerable listLopNode = _lopBUS.LayListLop_MaNam_MaKhoi( GridUtil.GetValueItem(gridLookUpNamHoc), item.GetValue("MaKhoi").ToString() ); // add các lớp vào khối item foreach (Lop lopNode in listLopNode) { treeListLopHoc.AppendNode(new object[] { lopNode.MaLop, lopNode.TenLop }, item); } } treeListLopHoc.ExpandAll(); // Expand all nodes } private void HienThi_Lai_BangHocSinh() { // Chắc chắn chọn được node if (treeListLopHoc.FocusedNode == null || GridUtil.CheckSelectedNull(gridLookUpNamHoc)) { gridControlHocSinh.DataSource = null; return; } string maLop = treeListLopHoc.FocusedNode.GetValue("MaKhoi").ToString(); gridControlHocSinh.DataSource = _hocSinhBUS.LayDT_HocSinh(maLop); } private void simpleTinhToan_Click(object sender, EventArgs e) { for (int i = 0; i < gridViewThucDon.RowCount; i++) { if (gridViewThucDon.GetRowCellValue(i, "MaHocSinh") == null) { HienThiLai(); return; } string maHocSinh = gridViewThucDon.GetRowCellValue(i, "MaHocSinh").ToString(); string thu = gridViewThucDon.GetRowCellValue(i, "Thu").ToString();

66

if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, thu)) { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, thu); int dau = Convert.ToInt32(_thucPhamBUS.Lay_MaDauTien()); int cuoi = Convert.ToInt32(_thucPhamBUS.Lay_MaCuoiCung()); thucDon.MonAn1.ID = rd.Next(dau, cuoi); thucDon.MonAn2.ID = rd.Next(dau, cuoi); thucDon.MonAn3.ID = rd.Next(dau, cuoi); thucDon.MonAn4.ID = rd.Next(dau, cuoi); thucDon.MonAn5.ID = rd.Next(dau, cuoi); HocSinh hs = _hocSinhBUS.LayHoSo_HocSinh(thucDon.hocSinh.MaHocSinh); DinhDuongCanThiet obj = _dinhDuongBUS.LayDT_ByTuoi(hs.Tuoi); KcalNgay = hs.KcalNgay; Lipit = KcalNgay * obj.Lipit / 100; Gluxit = KcalNgay * obj.Gluxit / 100; Protein = KcalNgay * obj.Protein / 100; int tongMon = 5; if (tongMon == 0) return; decimal DinhDuongTungMon = KcalNgay / tongMon; decimal LipitTungMon = Lipit / tongMon; decimal GluxitTungMon = Gluxit / tongMon; decimal ProteinTungMon = Protein / tongMon; if (thucDon.MonAn1.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn1.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong1 = Math.Round(max, 0); } if (thucDon.MonAn2.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn2.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit;

67

if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong2 = Math.Round(max, 0); } if (thucDon.MonAn3.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn3.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong3 = Math.Round(max, 0); } if (thucDon.MonAn4.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn4.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4;

68

if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong4 = Math.Round(max, 0); } if (thucDon.MonAn5.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn5.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong5 = Math.Round(max, 0); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(thucDon.hocSinh.MaHocSinh, thucDon.Thu)) { _thucDonBUS.CapNhat(thucDon); } else { _thucDonBUS.Them(thucDon); } } else { //Neu chua co thuc don ThucDon thucDon = new ThucDon(); thucDon.hocSinh.MaHocSinh = maHocSinh; thucDon.Thu = thu; int dau = Convert.ToInt32(_thucPhamBUS.Lay_MaDauTien()); int cuoi = Convert.ToInt32(_thucPhamBUS.Lay_MaCuoiCung()); Random rd = new Random(); thucDon.MonAn1.ID = rd.Next(dau, cuoi); thucDon.MonAn2.ID = rd.Next(dau, cuoi); thucDon.MonAn3.ID = rd.Next(dau, cuoi); thucDon.MonAn4.ID = rd.Next(dau, cuoi);

69

thucDon.MonAn5.ID = rd.Next(dau, cuoi); HocSinh hs = _hocSinhBUS.LayHoSo_HocSinh(thucDon.hocSinh.MaHocSinh); DinhDuongCanThiet obj = _dinhDuongBUS.LayDT_ByTuoi(hs.Tuoi); KcalNgay = hs.KcalNgay; Lipit = KcalNgay * obj.Lipit / 100; Gluxit = KcalNgay * obj.Gluxit / 100; Protein = KcalNgay * obj.Protein / 100; int tongMon = 5; if (tongMon == 0) return; decimal DinhDuongTungMon = KcalNgay / tongMon; decimal LipitTungMon = Lipit / tongMon; decimal GluxitTungMon = Gluxit / tongMon; decimal ProteinTungMon = Protein / tongMon; if (thucDon.MonAn1.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn1.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong1 = Math.Round(max, 0); } if (thucDon.MonAn2.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn2.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) {

70

decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong2 = Math.Round(max, 0); } if (thucDon.MonAn3.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn3.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong3 = Math.Round(max, 0); } if (thucDon.MonAn4.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn4.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong4 = Math.Round(max, 0); } if (thucDon.MonAn5.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn5.ID); decimal max = 0;

71

decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong5 = Math.Round(max, 0); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(thucDon.hocSinh.MaHocSinh, thucDon.Thu)) { _thucDonBUS.CapNhat(thucDon); } else { _thucDonBUS.Them(thucDon); } } } HienThiLai(); } private void gridViewThucDon_InvalidRowException(object sender, DevExpress.XtraGrid.Views.Base.InvalidRowExceptionEventArgs e) { e.ExceptionMode = ExceptionMode.NoAction; } private void gridViewThucDon_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e) { } private void gridViewThucDon_ValidateRow(object sender, DevExpress.XtraGrid.Views.Base.ValidateRowEventArgs e) { DataRow dr = gridViewThucDon.GetDataRow(e.RowHandle); var thucDon = new ThucDon(); thucDon.hocSinh.MaHocSinh = dr["MaHocSinh"].ToString(); thucDon.Thu = dr["Thu"].ToString(); thucDon.MonAn1.ID = dr["MonAn1"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn1"]); thucDon.KhoiLuong1 = dr["KhoiLuong1"] is DBNull ? 0 : Convert.ToDecimal(dr["KhoiLuong1"]); thucDon.MonAn2.ID = dr["MonAn2"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn2"]);

72

thucDon.KhoiLuong2 = dr["KhoiLuong2"] is DBNull ? 0 : Convert.ToDecimal(dr["KhoiLuong2"]); thucDon.MonAn3.ID = dr["MonAn3"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn3"]); thucDon.KhoiLuong3 = dr["KhoiLuong3"] is DBNull ? 0 : Convert.ToDecimal(dr["KhoiLuong3"]); thucDon.MonAn4.ID = dr["MonAn4"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn4"]); thucDon.KhoiLuong4 = dr["KhoiLuong4"] is DBNull ? 0 : Convert.ToDecimal(dr["KhoiLuong4"]); thucDon.MonAn5.ID = dr["MonAn5"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn5"]); thucDon.KhoiLuong5 = dr["KhoiLuong5"] is DBNull ? 0 : Convert.ToDecimal(dr["KhoiLuong5"]); //{ // hocSinh = // { // MaHocSinh = dr["TenHocSinh"].ToString(), // //TenHocSinh = dr["TenHocSinh"].ToString() // }, // Thu = (dr[1]).ToString(), // MonAn1 = // { // //ID = dr[2] is DBNull ? -1 : Convert.ToInt32(dr[2]) // ID = dr["MonAn1"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn1"]) // }, // KhoiLuong1 = dr["KhoiLuong1"] is DBNull ? -1 : Convert.ToDecimal(dr["KhoiLuong1"]), // MonAn2 = // { // ID = dr["MonAn2"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn2"]) // }, // KhoiLuong2 = dr["KhoiLuong2"] is DBNull ? -1 : Convert.ToDecimal(dr["KhoiLuong2"]), // MonAn3 = // { // ID = dr["MonAn3"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn3"]) // }, // KhoiLuong3 = dr["KhoiLuong3"] is DBNull ? -1 : Convert.ToDecimal(dr["KhoiLuong3"]), // MonAn4 = // { // ID = dr["MonAn4"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn4"]) // }, // KhoiLuong4 = dr["KhoiLuong4"] is DBNull ? -1 : Convert.ToDecimal(dr["KhoiLuong4"]), // MonAn5 = // { // ID = dr["MonAn5"] is DBNull ? -1 : Convert.ToInt32(dr["MonAn5"]) // }, // KhoiLuong5 = dr["KhoiLuong5"] is DBNull ? -1 : Convert.ToDecimal(dr["KhoiLuong5"]) //}; HocSinh hs = _hocSinhBUS.LayHoSo_HocSinh(thucDon.hocSinh.MaHocSinh); DinhDuongCanThiet obj = _dinhDuongBUS.LayDT_ByTuoi(hs.Tuoi); KcalNgay = hs.KcalNgay; Lipit = KcalNgay * obj.Lipit / 100; Gluxit = KcalNgay * obj.Gluxit / 100; Protein = KcalNgay * obj.Protein / 100; int tongMon = 0; if(thucDon.MonAn1.ID > 0) { tongMon++; } if(thucDon.MonAn2.ID > 0) { tongMon++; } if (thucDon.MonAn3.ID > 0)

73

{ tongMon++; } if (thucDon.MonAn4.ID > 0) { tongMon++; } if (thucDon.MonAn5.ID > 0) { tongMon++; } if (tongMon == 0) return; decimal DinhDuongTungMon = KcalNgay / tongMon; decimal LipitTungMon = Lipit / tongMon; decimal GluxitTungMon = Gluxit / tongMon; decimal ProteinTungMon = Protein / tongMon; if (thucDon.MonAn1.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn1.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong1 = Math.Round(max, 0); } if (thucDon.MonAn2.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn2.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if(tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if(tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4;

74

if(tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong2 = Math.Round(max, 0); } if (thucDon.MonAn3.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn3.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong3 = Math.Round(max, 0); } if (thucDon.MonAn4.ID > 0) { ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn4.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong4 = Math.Round(max, 0); } if (thucDon.MonAn5.ID > 0) {

75

ThucPham tp = _thucPhamBUS.LayThucPham_ByID(thucDon.MonAn5.ID); decimal max = 0; decimal kgLipit = LipitTungMon / 9; if (tp.Lipit != 0) { decimal klg1 = (100 * kgLipit) / tp.Lipit; if (max < klg1) max = klg1; } decimal kgprotein = ProteinTungMon / 4; if (tp.Protein != 0) { decimal klg2 = (100 * kgprotein) / tp.Protein; if (max < klg2) max = klg2; } decimal kgGluxit = GluxitTungMon / 4; if (tp.Gluxit != 0) { decimal klg3 = (100 * kgGluxit) / tp.Gluxit; if (max < klg3) max = klg3; } thucDon.KhoiLuong5 = Math.Round(max, 0); } if(_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(thucDon.hocSinh.MaHocSinh, thucDon.Thu)) { _thucDonBUS.CapNhat(thucDon); } else { _thucDonBUS.Them(thucDon); } // int dau = Convert.ToInt32(_thucPhamBUS.Lay_MaDauTien()); // int cuoi = Convert.ToInt32(_thucPhamBUS.Lay_MaCuoiCung()); // Random rd = new Random(); // ThucPham thucPham = _thucPhamBUS.LayThucPham_ByID(rd.Next(dau, cuoi)); HienThiLai(); } public void HienThiLai() { dt = new DataTable(); dt.Columns.Add("MaHocSinh"); dt.Columns.Add("TenHocSinh"); dt.Columns.Add("Thu"); dt.Columns.Add("MonAn1"); dt.Columns.Add("KhoiLuong1"); dt.Columns.Add("MonAn2"); dt.Columns.Add("KhoiLuong2"); dt.Columns.Add("MonAn3"); dt.Columns.Add("KhoiLuong3"); dt.Columns.Add("MonAn4"); dt.Columns.Add("KhoiLuong4"); dt.Columns.Add("MonAn5"); dt.Columns.Add("KhoiLuong5"); for (int i = 0; i < gridViewHocSinh.RowCount; i++) {

76

//Int32 selectedRowCount = gridViewHocSinh.Rows.GetRowCount(DataGridViewElementStates.Selected); if (gridViewHocSinh.IsRowSelected(i)) { string maHocSinh = gridViewHocSinh.GetRowCellValue(i, "MaHocSinh").ToString(); if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Thứ hai") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ hai"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Thứ hai"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ hai"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2; dr[7] = thucDon.MonAn3.ID; dr[8] = thucDon.KhoiLuong3; dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Thứ ba") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ ba"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Thứ ba"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ ba"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2; dr[7] = thucDon.MonAn3.ID; dr[8] = thucDon.KhoiLuong3;

77

dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Thứ tư") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ tư"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Thứ tư"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ tư"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2; dr[7] = thucDon.MonAn3.ID; dr[8] = thucDon.KhoiLuong3; dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Thứ năm") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ năm"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Thứ năm"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ năm"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2; dr[7] = thucDon.MonAn3.ID;

78

dr[8] = thucDon.KhoiLuong3; dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Thứ sáu") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ sáu"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Thứ sáu"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ sáu"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2; dr[7] = thucDon.MonAn3.ID; dr[8] = thucDon.KhoiLuong3; dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Thứ bảy") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ bảy"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Thứ bảy"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Thứ bảy"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2;

79

dr[7] = thucDon.MonAn3.ID; dr[8] = thucDon.KhoiLuong3; dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } if (_thucDonBUS.KiemTraTonTai_MaHocSinh_Thu(maHocSinh, "Chủ nhật") == false) { DataRow dr = dt.NewRow(); dr[0] = maHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Chủ nhật"; dt.Rows.Add(dr); } else { ThucDon thucDon = _thucDonBUS.LayThucDon_maHoSinh_thu(maHocSinh, "Chủ nhật"); DataRow dr = dt.NewRow(); dr[0] = thucDon.hocSinh.MaHocSinh; HocSinh obj = _hocSinhBUS.LayHoSo_HocSinh(maHocSinh); dr[1] = obj.TenHocSinh; dr[2] = "Chủ nhật"; dr[3] = thucDon.MonAn1.ID; dr[4] = thucDon.KhoiLuong1; dr[5] = thucDon.MonAn2.ID; dr[6] = thucDon.KhoiLuong2; dr[7] = thucDon.MonAn3.ID; dr[8] = thucDon.KhoiLuong3; dr[9] = thucDon.MonAn4.ID; dr[10] = thucDon.KhoiLuong4; dr[11] = thucDon.MonAn5.ID; dr[12] = thucDon.KhoiLuong5; dt.Rows.Add(dr); } } } gridControlThucDon.DataSource = dt; } private void gridLookUpNamHoc_EditValueChanged(object sender, EventArgs e) { CapNhatListLop(); } private void simpleThucDon_Click(object sender, EventArgs e) { HienThiLai(); } private void treeListLopHoc_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e) { HienThi_Lai_BangHocSinh(); }

80

81

private void gridViewHocSinh_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) { if (gridViewHocSinh.FocusedRowHandle < 0 || gridViewHocSinh.FocusedRowHandle >= gridViewHocSinh.RowCount) { return; } lblHoTen.Text = gridViewHocSinh.GetRowCellValue(e.FocusedRowHandle, "TenHocSinh").ToString(); lblTuoi.Text = gridViewHocSinh.GetRowCellValue(e.FocusedRowHandle, "Tuoi").ToString(); lblGioiTinh.Text = gridViewHocSinh.GetRowCellValue(e.FocusedRowHandle, "GioiTinh").ToString(); KcalNgay = Convert.ToDecimal(gridViewHocSinh.GetRowCellValue(e.FocusedRowHandle, "KcalNgay")); lblKcal.Text = gridViewHocSinh.GetRowCellValue(e.FocusedRowHandle, "KcalNgay").ToString(); DinhDuongCanThiet obj = _dinhDuongBUS.LayDT_ByTuoi(Convert.ToInt32(gridViewHocSinh.GetRowCellValue(e.FocusedRowHan dle, "Tuoi"))); Lipit = KcalNgay * obj.Lipit / 100; Gluxit = KcalNgay * obj.Gluxit / 100; Protein = KcalNgay * obj.Protein / 100; lblProtein.Text = Protein.ToString(); lblLipit.Text = Lipit.ToString(); lblGluxit.Text = Gluxit.ToString(); string bmi = gridViewHocSinh.GetRowCellValue(e.FocusedRowHandle, "BMI").ToString(); //. ChiSoBMI obje = _chiSoBUS.LayDT_ByChiSo(Convert.ToDecimal(bmi)); labelControl8.Text = obje.Loai; //spinEditDen.EditValue = gridViewBMI.GetRowCellValue(e.FocusedRowHandle, "TuoiDen"); } } } 2. Form Thực phẩm

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Linq; using System.Threading.Tasks; using System.Windows.Forms; using DevExpress.XtraEditors; using Foods.BussinessLogicLayer; using Foods.Utilities; using DevExpress.XtraGrid.Views.Base; using Foods.Entity; namespace Foods { public partial class FrmThucPham : DevExpress.XtraEditors.XtraForm {

private readonly ThucPhamBUS _thucPhamBUS; private bool IsAddButton; private bool IsDeleteButton; int id; public FrmThucPham() { InitializeComponent(); _thucPhamBUS = new ThucPhamBUS(); IsAddButton = IsDeleteButton = true; } private void HienThi_DSLop() { gridControlThucPham.DataSource = _thucPhamBUS.LayDT_DanhSach(GridUtil.GetDisplayMember(gridLookUpLoai)); DisableControls(editing: false); } private void FrmLopHoc_Load(object sender, EventArgs e) { HienThi_DSLop(); Load_Loai(); } private void Load_Loai() { DataTable dt = new System.Data.DataTable(); dt.Columns.Add("LoaiThucPham"); DataTable dtLoai = _thucPhamBUS.LayDT_DanhSach(); foreach (DataRow dr3 in dtLoai.Rows) { bool kt = true; string loai = dr3["LoaiThucPham"].ToString(); foreach (DataRow dr2 in dt.Rows) { if (loai == dr2["LoaiThucPham"].ToString()) { kt = false; break; } } if(kt) { DataRow dr = dt.NewRow(); dr[0] = loai; dt.Rows.Add(dr); } } GridUtil.SetDataSource(gridLookUpLoai, dt, "LoaiThucPham", "LoaiThucPham", 0); } private void BtnHienThiAll_Click(object sender, EventArgs e) { //gridLookUpNamHoc.Text = ""; //gridLookUpKhoiLop.Text = ""; gridLookUpLoai.Text = ""; gridControlThucPham.DataSource = _thucPhamBUS.LayDT_DanhSach(); } private void ResetControl()

82

{ textTenThucPham.Text = ""; textEditLoaiThucPham.Text = ""; spinEditNangLuong.EditValue = 0; spinEditProtein.EditValue = 0; spinEditGluxit.EditValue = 0; spinEditLipit.EditValue = 0; } private void gridLookUpNamHoc_EditValueChanged(object sender, EventArgs e) { HienThi_DSLop(); } private void gridLookUpKhoiLop_EditValueChanged(object sender, EventArgs e) { HienThi_DSLop(); } private void DisableControls(bool editing) { barButtonThoat.Enabled = !editing; gridControlThucPham.Enabled = !editing; gridLookUpLoai.Enabled = !editing; IsAddButton = !editing; IsDeleteButton = !editing; barButtonThemMoi.Caption = editing ? "Không nhập" : "Thêm mới"; barButtonXoa.Caption = editing ? "Nhập lại" : "Xóa"; if (!editing) { if (gridViewThucPham.RowCount > 0) { gridViewLopHoc_FocusedRowChanged(this, new FocusedRowChangedEventArgs(0, 0)); } else { textEditLoaiThucPham.Text = ""; textTenThucPham.Text = ""; spinEditNangLuong.EditValue = 0; spinEditProtein.EditValue = 0; spinEditGluxit.EditValue = 0; spinEditLipit.EditValue = 0; } } } private void barButtonHuongDan_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { FrmImportData f = new FrmImportData(); f.ShowDialog(); } private void gridViewLopHoc_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e) {

83

if (gridViewThucPham.FocusedRowHandle < 0 || gridViewThucPham.FocusedRowHandle >= gridViewThucPham.RowCount) { return; } textEditLoaiThucPham.Text = gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "LoaiThucPham").ToString(); textTenThucPham.Text = gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "TenThucPham").ToString(); spinEditNangLuong.EditValue = gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "NangLuong"); spinEditProtein.EditValue = gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "Protein"); spinEditGluxit.EditValue = gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "Gluxit"); spinEditLipit.EditValue = gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "Lipit"); id = Convert.ToInt32(gridViewThucPham.GetRowCellValue(e.FocusedRowHandle, "ID")); } private void barButtonThemMoi_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (IsAddButton) { DisableControls(true); ResetControl(); } else { DisableControls(false); } } private void barButtonLuu_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (textTenThucPham.Text == "") { MsgboxUtil.Error("Bạn chưa nhập tên thực phẩm!"); textTenThucPham.Focus(); return; } if (textEditLoaiThucPham.Text == "") { MsgboxUtil.Error("Bạn chưa nhập loại thực phẩm!"); textEditLoaiThucPham.Focus(); return; } ThucPham thucPham = new ThucPham(); thucPham.LoaiThucPham = textEditLoaiThucPham.Text; thucPham.TenThucPham = textTenThucPham.Text; thucPham.NangLuong = Convert.ToDecimal(spinEditNangLuong.EditValue); thucPham.Protein = Convert.ToDecimal(spinEditProtein.EditValue); thucPham.Lipit = Convert.ToDecimal(spinEditLipit.EditValue); thucPham.Gluxit = Convert.ToDecimal(spinEditGluxit.EditValue); thucPham.ID = id; if (_thucPhamBUS.KiemTonTai(thucPham.TenThucPham)) { _thucPhamBUS.CapNhat(thucPham);

84

MsgboxUtil.Success("Đã cập nhật " + textTenThucPham.Text + " thành công!"); } else { if (_thucPhamBUS.Them(thucPham)) { MsgboxUtil.Success("Đã tạo " + textTenThucPham.Text + " thành công!"); } } HienThi_DSLop(); } private void barButtonXoa_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (!IsDeleteButton) { ResetControl(); return; } if (_thucPhamBUS.KiemTonTai(textTenThucPham.Text)) { if (MsgboxUtil.YesNo("Bạn có muốn xóa hay không?") == DialogResult.No) { return; } _thucPhamBUS.Xoa(id); MsgboxUtil.Success("Đã xóa thành công!"); HienThi_DSLop(); } } private void barButtonThoat_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Close(); } } }

85